Followers

Thursday, January 20, 2011

Java Blog@Oracle , JavaSpotLight #13

Hi Java Enthusiasts,

Podcast #13 from Oracle's Java blog is out now, posted on Jan 19, 2011. In the 20:44 minute long podcast, the discussion focused on,


1. JDK 7 is feature complete: 

The JDK 7 project has reached Feature Complete (FC). This means that development and QA have finished all planned feature and test development work in the release and are moving the focus to testing and bug fixing on all supported JDK 7 platforms. This is a major step towards JDK 7 General Availability (GA) and implies that we are tracking close to the plan published on openjdk.java.net.

For more info, click here.


2. WebLogic 10.3.4 released:

Version 10.3.4 of Oracle WebLogic Server is now available along with the rest of the Fusion Middleware set of products. Here are some of the new features in this release :
• Exalogic Elastic Cloud Software Support
• Support for TopLink JPA 2.0 with patch 9923849
• Enhanced support for Oracle RAC with a Grid Link Data Source
• Certification with JAX-RS Jersey

For more info, please click here.


3. JPA 2.1 and JAX-RS 2.0 JSRs filed:

The formal work on Java EE 7 has started with the filing of two new JSRs :
JSR 338: Java Persistence 2.1
The Java Persistence API is the Java API for the management of persistence and object/relational mapping in Java EE and Java SE environments.

JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services
This JSR will develop the next version of JAX-RS, the API for for RESTful (Representational State Transfer) Web Services in the Java Platform.

More info here.


4. Mac OSX Port:

The goal of this Project is to produce a high-quality, open source version of JDK 7 for the Mac. The final release has the following goals:

  • Pass all appropriate certification tests for Java SE 7
  • Include a complete, native Cocoa-based UI Toolkit
  • Provide excellent performance

More info here.


5. Feature Interview of Roberto Chinnici on Java EE Platform Lead on the futures in Java EE


Thanks and warm wishes!
Sunit Ronnie Ghosh

Monday, January 17, 2011

Ten Tips to Creating the Perfect Career

Hi Job Seekers,


Recently I was going through the Book "Answering Tough Interview Questions For Dummies". I found the last chapter about "Ten Tips to Creating the Perfect Career". After reading that, I felt to share the content of the same to you all. I have pruned the content to make it more readable and brief.


10. Knowing What You Want in a Job

Many people aren’t that happy in their jobs. But given that we often spend more time at work than we do at home, wouldn’t thinking about how we can be more fulfilled in our jobs make good sense? Only when you have an idea of where you want to go can you start to think about the steps necessary to get there.

9. Understanding Yourself

Many people hold themselves back at work because they delude themselves about their true strengths and weaknesses. To some extent, I’d say that pretty much everybody allows themselves a few delusions. And often the reason people can’t get a new job is because interviewers can see some weakness in them that they refuse to see in themselves.

You need to understand your weaknesses before you can work on them. And the best way of identifying these weaknesses is to gather feedback from people who know you. Simply ask these people three questions:

  • What are my strengths?
  • What are my weaknesses?
  • How can I improve on my weaknesses?

8. Working on Your Weaknesses

Don’t ignore the feedback you receive from people. Dismissing feedback and thinking that these people don’t understand the real you is easy. But remember that if the people who know you can see certain weaknesses in you, then employers may decide not to give you a job because they can see those weaknesses too.


7. Networking Widely

A massive market of jobs is never advertised, but instead filled by word-of-mouth alone. And the only way to access those jobs is to make sure that people know about you, your skills, and experience. If you only take on board one piece of advice for building a successful and rewarding career network more widely.


6. Asking to See Offers in Writing

Being offered a job is a great feeling. Hurrah and congratulations! But always ask to see an offer in writing. You can read through the document at your own pace and see exactly what the company is offering you. Apart from the salary itself, does the offer satisfy your needs in terms of benefits? Employers can and do occasionally retract offers due to unforeseen circumstances. So keep attending interviews and never close off other job options until you’ve signed an iron-clad employment contract.


5. Evaluating the Job Thoroughly

Apart from the pay and benefits, other factors are also important in considering a job offer. How much do you really want this job? How does it fit in with your long-term career plans? Given that you may be spending many months or even years in the job, do you think you’ll enjoy it? No employer is ever perfect for you. Always ask for at least a couple of days – more if the role is senior – to think about a job offer and consider whether the position is totally right for you.


4. Considering Culture Carefully

Being chosen over other candidates and offered a new job is thrilling. But remember that employers rarely tell candidates exactly what working for their company is like – or at least not voluntarily. Interviewers and recruitment brochures are there to sell a job to prospective candidates.

In deciding whether to accept a new job offer, you should weigh up the culture of the organisation – the unspoken rules that govern how people really behave at work.


3. Negotiating a Good Deal for Yourself

Your best chance to negotiate a better deal for yourself is when the interviewers offer you the job. They have eliminated   the other candidates and decided that you are the only person that they want. If you’re unsatisfied with the salary or benefits, or perhaps the conditions of the job, you have nothing to lose by asking to have them tweaked to your satisfaction. Don’t think only about asking for more pay or benefits. You may also want to consider options such as, the hours that you work, the nature of your job, the opportunities for training and your financial needs.


2. Investing in Your Future

Most people are full of enthusiasm on joining a new organisation. But that enthusiasm can fade after a few years or even months. And then those people end up putting themselves on autopilot – going through the motions but not thinking about what they can do to push themselves and develop in their careers.

Cruising is fine until you look for a new job. Interviewers want to know about your achievements. Will you have anything worthwhile to talk about?

Make sure that you build up your CV by participating in big projects, volunteering to join committees, chasing promotions, or at least moving departments every couple of years. Always think about storing up achievements to put onto your CV and talk about in future interviews.

Your employer may say that they have your best interests at heart – but in reality the needs of the organisation always come above yours. If you don’t look after your own career, no one else will!


1. Looking for Opportunities to Grow

Employers don’t like to give big pay rises to long-standing employees. And getting more responsibility can be difficult if an organisation is happy to leave you where you are. Often, the only way to get more money or responsibility is to change employers. So always keep an eye on the jobs sections of newspapers and relevant Web sites.

Keep in touch with headhunters and recruitment consultants. Even if you’re not currently thinking about changing jobs, update your CV and send it to them at least once a year so that you’re on file for possible future opportunities.


Well Wisher,
Sunit Ronnie Ghosh
Please note, as the author has already mentioned the reference of the material above and has no rights what so ever on the content. Please buy the book to read the contents.

Sunday, January 16, 2011

Flickr.com Alert

Hi,


If you have a Yahoo Mail account, then effective 2007 all the attachment photographs in your e-mail account were migrated to Flickr.com.

Most worrying fact is that, even though your attachment photos of the e-mail account are private, they are open to any Flickr.com member at your Flickr.com account as default after migration.

It is recommended to visit Flickr.com and login through your Yahoo credentials and either change the settings or if you are not using it, delete the Flickr.com account. You can create it again when required.


Well Wisher,
Sunit Ronnie Ghosh

Saturday, January 15, 2011

IIM Kozhikode Attractive Admission rules

Hi MBA Aspirants,


IIM K is having a three stage selection process this year: 

Stage 1: All students with the below CAT percentile and above will have to register online here and will be considered for the second stage. Last date for registration is 21st Jan, 2011.

QADIVerbalOverall
General55555575
NC-OBC50505065
SC45454555
ST40404045
PWD - Low Vision40404045
PWD - Hearing Impairment40404045
PWD - Locomotor Disability / Cerebral Palsy 40404045


Stage 2: From this pool of registered candidates, IIM K will release the GD/PI list on the basis of the below weight-distribution:
  • CAT score - 50 %
  • 10th Standard - 20 %
  • 12th Standard - 20 %
  • Graduation - 10 % 

Stage 3: For stage three, the below weight-distribution will be used to release the final shortlist for admission:
  • Stage 2 score - 30% (The stage 2 score will be indexed to 30%)
  • Essay (Extempore essay on a topic: 30 mins) - 20%
  • Personal Interview - 35%
  • Profile - 15%


Please note that the above information is available here and the author does not owns or takes responsibility over the changes in the information for the same.


Best Wishes,
Sunit Ronnie Ghosh.

Java Blog@Oracle , JavaSpotLight #12

Hi Java Enthusiasts,

Podcast #12 from Oracle's Java blog is out now, posted on Jan 13, 2011. In the 30:16 minute long podcast, the discussion focused on,


1. GlassFish webinar series : 

With GlassFish 3.1 soon to be released, and Java EE 6 still a very popular topic, the GlassFish Webinar Series has you covered on lots of different topics. That's no less than 12 webinars scheduled before the end of May to cover the Java EE programming model, various tools, what's new in GlassFish 3.1, clustering, admin, productivity, Coherence*Web integration, HK2, Security, Embedded and more.

Free registration for the webinar link is also available.

For more info, click here.


2. Roller 5 on multiple Java EE AppServers:

Apache Roller is a full-featured, multi-user and group-blog server suitable for blog sites, large and small. Roller is a Java web application that runs on any Java EE server and any relational database and will soon ship version 5. Some of Roller's key features are, Multi-user blogging, Group blogging with three permisson levels (editor, author and limited), Support for comment moderation, control over blog layout/style via templates, Built-in search engine, Pluggable cache and rendering system, Support for blog clients that support MetaWeblog API and all blogs have entry and comment feeds in both RSS 2.0 and Atom 1.0 formats

It powers internal and external employee blogs at Sun, IBM and other companies as well as the JRoller.com Java blogging community. It also powers the Oracle Java blog (and all of blogs.sun.com - 5k+ blogs, 145k entries, hundreds of thousands of hits every day).

For more info, please click here and here.


3. Update on GlassFish 3.1:

GlassFish 3.1 Open Source Edition is scheduled to ship in February 2011. Building on the modular, Java EE 6 based GlassFish Server Open Source Edition 3.0, version 3.1 is the next major release of GlassFish Server Open Source Edition. This release is currently under development and will focus on the following features:

  • Clustering and Centralized Administration
  • High Availability

More info here.


4. Interview with Adam Bien:

Adam Bien has started Java development with JDK 1.0 in 1996. And since then, he has spent his whole career as a freelancer working on the server side with Java with efforts towards client side too. Following things were discussed during the interview.

  • Swing and JavaFX 2.0 with java API with emphasis on Java FX script.
  • With Java FX 2.0, with the Java API we can work with Groovy, Scala and the four guys, JRuby.
  • Ease of Java EE 6 and 7 development.
  • Apple's donation of Mac OS X to OpenJDK.


5. Oracle Magazine January/Februray 2011 - Simplicity by Design


6. 10 Things Java Should Steal from Ruby:

This was a session that was done by Bruce Tate in August of 2006. Discussion on how things look today is given below:

  • Continuations which are basically syntactic method of implementing certain types of optimization, are not deemed to be a part of Java.
  • Meta-programming is not available to Java because of the very nature of how statically typed the language is.
  • Conventions over XML, ease of development in Java EE 5, which had to do with convention of a configuration as well as annotations rather than XML if you wanted to change that default behavior.

There were few other points which can be heard in the podcast.


Thanks and warm wishes!
Sunit Ronnie Ghosh

Tuesday, January 11, 2011

Java Blog@Oracle, JavaSpotLight #11

Hi Java Enthusiasts,

Podcast #11 from Oracle's Java blog is out now, posted on Jan 06, 2011. In the 18:31 minute long podcast, the discussion focused on,

1. JavaTest team release JTHarness 4.3 at java.net : 

The JT harness is based on Oracle's JavaTest harness. The JT harness is a general purpose, fully-featured, flexible, and configurable test harness very well suited for most types of unit testing. Originally developed as a test harness to run TCK test suites, it has since evolved into a general purpose test platform. The JT harness:
  • Is designed to configure, sequence, and run test suites that consist of many (100,000 or more) discrete, independent tests. It is especially good at testing APIs and compilers.
  • Can be used to run tests on all of the Java platforms, from the Java Card platform, to the Java Platform, Enterprise Edition ("Java EE").
  • Enables you to create test suites that are self-contained products that customers can easily configure and run.
Source and more info here.


2. JBoss 6.0 Community Release:

RedHat has now released JBoss 6.0, a Java EE 6 Web Profile product. It is a community release, meaning that support on this product is not available, yet! This release adds another player to the growing list of JavaEE implementations which means more choice for developers. With JBoss AS officially implementing the Java EE 6 spec now, a new baseline for Java EE has been set. From now on, technologies like JSF 2.0, EJB3.1, JPA 2.0 and CDI can really be considered as basic, standard available techs.

More here.


3. New version of LeonardoSketch released, including Amino toolkit:

Leonardo is an open source vector drawing program named after the 15th century painter, but aimed for the 21st century user.  It focuses on common tasks like mock ups, prototyping, quick vector sketches, and presentations with a clean and consistent user interface. Leo is designed to be augmented by Internet webservices and plugins created in several scripting languages.
Current Features include:
  • export to PNG, HTML, HTML Canvas, SVG, Email, and Twitter.
  • import from SVG (partial support)
  • vector drawing with curves, shapes, and text.
  • common reusable symbols stored in a sidebar
  • integrated Creative Commons Flickr search

More info here.


4. Events@Oracle:


5. Feature interview with Nabor Coutinho De Oliveira Junior

Nabor Coutinho De Oliveira Junior is the Manager of Mobile Internet and Messaging for Tim Cellular. The interview was focused on inviting developers from Brazil and across the world to develop for the TIM Cellular Application Store.

TIM website here.


6. The future of JSR-310, Date and Time API:

More here.

Monday, January 10, 2011

The Curious Case Of GWT And AppEngine

On 16th July 2007, I met with an interesting Guy. Our friendship is now 42 months old. Though, his name as a word drips with arrogance when used as a verb, he is a cheerful chap and is very comfortable around all kinds of Plug-ins. Plug-ins, yes this is what he calls compatible friendship between him and an another person. Meet my friend Eclipse. His full name is "Eclipse 3.5 Galileo". And yes his middle name is a float. No wonder he is as awesome as he seems to be.

Yesterday I spent the whole day with him, chatting, poking and making merry. Remembering good ol' days of our friendship. Enough. Reality now.

Yesterday I was interfering into Google matters. Pursuing it seriously. Very serious. Mission objective was to make my friend Eclipse gain some weight. I wanted to feed him some high protein food. On the Google website the name of the thing was given as "Google Web Toolkit 2.1.1 SDK + Plugin" and "Google App Engine 1.4.0 SDK". What a weird name for a food for my friend.

I was told "Google Web Toolkit 2.1.1 SDK + Plugin" will help him to help me instead to know and learn something to do with Ajax. And the other one "Google App Engine 1.4.0 SDK" will help me to know and learn Cloud Computing Application Development. What? I said, Clouds, now is this something to learn. Ajax and Cloud?? Where am I, a Flying club or Disney Land. O.K. Let us see.

I fed him through his mouth which, the manual said, is called "Install New Software..." and is present in the Help Tab. I fed him the link. He seemed to gobble it down first , but then lost his appetite. I wondered what happened to my dear friend.


I contacted my Internet Doctor, a doctor for all remedies, Doctor Google. He prescribed a help forum for Guys named Eclipse. They told me to brush his mouth and clear it of all the "Available Software Sites" from "Windows>>Preference>>Install/Update>>Available Software Sites" and then feed him the link. I did just that and found that my friend "Eclipse 3.5 Galileo" went all normal gobbling up all the bandwidth and ate all of the 100MB SDK and plugin.

He is all fat and chubby now, helping me in learning Java Ajax Framework called Google Web Toolkit and Cloud computing App Engine. So nice of him. Thanks for being my friend "Eclipse 3.5 Galileo".

Sunday, January 9, 2011

Ajax

Hello there, Java Enthusiasts,

I wanted to share some notes on Ajax and related stuff. Hope it helps to summarize briefly. This blog article will be updated with more information from time to time.

Ajax shorthand for Asynchronous JavaScript and XML is a combination of the technologies:
  1. HTML or XHTML and CSS for presentation
  2. the Document Object Model (DOM) for dynamic display of and interaction with data
  3. XML for the interchange of data, and XSLT for its manipulation
  4. the XMLHttpRequest object for asynchronous communication
  5. JavaScript to bring these technologies together

With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behaviour of the existing page. Data is usually retrieved using the XMLHttpRequest object.

The term Ajax was coined on February 18, 2005 by Jesse James Garrett in an article entitled Ajax: A New Approach to Web Applications.

On April 5, 2006 the World Wide Web Consortium (W3C) released the first draft specification for the XMLHttpRequest object in an attempt to create an official web standard.

The utility of background HTTP requests to the server and asynchronous web technologies remained fairly obscure until it started appearing in full scale online applications such as Outlook Web Access (2000) and Oddpost (2002), and later, Google made a wide deployment of Ajax with Gmail (2004) and Google Maps (2005).

With traditional Ajax Client polling is used. Reverse Ajax describes the implementation of either Client polling or Server pushing models, or a combination of both. The design pattern is also known as Ajax Push, Full Duplex Ajax and Streaming Ajax.

An Ajax framework is a web application framework that helps to develop web applications that use Ajax. The goal of the framework is to provide the Ajax engine and associated server and client-side functions. Types of frameworks, according to the features they offer and the skills required of the user, include,
  1. Direct Ajax frameworks (require HTML, CSS and Ajax expertise), 
  2. Indirect Ajax frameworks (based on compiler technology, a high-level language is used), 
  3. Ajax component frameworks (offer pre-built components) and 
  4. Server-driven Ajax frameworks (offer a server-side component-based development model with some degree of Ajax support).
List of Ajax frameworks
JavaScript frameworks are browser-side frameworks very commonly used in Ajax development such as jQuery, SWFObject, jQuery UI, Prototype, Yahoo! UI Library, script.aculo.us etc.

Java frameworks use Java for server-side Ajax operations such as Apache Wicket, AribaWeb, Google Web Toolkit, Richfaces etc.

Others are Pyjamas for Python, Wt - a C++ Web Toolkit, ASP.NET AJAX from .NET, Sajax and Xajax for PHP and RJS for Ruby on Rails.

Saturday, January 8, 2011

R.I.P: Non Govt. MBA Exams

Hi MBA Aspirants,

A recent AICTE notice declared that from now on only Government (Central or State) conducted  B-School entrance exams are valid. This has the following impacts:

1. Important MBA entrance exams such as the XAT, ATMA or MICAT will be abolished.


2. Only CAT, MAT or any state government-conducted exams (such as the Maharashtra CET) will be considered as valid.

3.The admissions for B-Schools offering autonomous AICTE-approved PGDM, like, SP Jain Institute of Management & Research (SPJMR) in Mumbai, Management Development Institute (MDI) in Gurgaon, Goa Institute of Management (GIM), National Institute of Industrial Engineering (NITIE) in Mumbai and Mudra Institute of Communications, Ahmedabad (MICA),  will be handled by the authorities appointed by the state governments.

4. This circular is not binding on B-Schools that are affiliated to universities or deemed universities such as Indian Institutes of Management (IIMs), Narsee Monjee Institute of Management Studies (NMIMS), Symbiosis, IIFT Delhi or FMS Delhi. So we will still have entrance exams like FMS, IIFT, NMAT and SNAP.

5. According to AICTE it was done because there were too many b-schools admitting students only to make up their  numbers and make some additional money without bothering about offering qualitative education.

Overall there is not much impact on the MBA Entrance Exam scenario in India. Also discussions and deliberations are in process to include XAT as a valid option.
So, if XAT is included, the notice will only prove to be a guidance and regulatory document for the future of MBA exams in India.

Best wishes,
Sunit Ronnie Ghosh

Friday, January 7, 2011

Beep Beep: Sun certification has changed

Hi Java Programmers and Enthusiasts,

Namaste from Sunit from India!

Effective September 1, 2010, all Java and other Sun related technologies' certifications have been re-published and re-branded under the Oracle Certification Program(OCP). At this time, only the titles of the certifications are changing. The exam formats and objectives will remain the same as they were under Sun. Certified folks remain unaffected and newbies will get Oracle certificates. Let us dig deep into this topic.

All Java and other Sun related technologies' certifications will continue to be available via Oracle's Certification Delivery Partner, Prometric. Visit

One great news!! Certification candidates no longer need to purchase vouchers to register for an exam. The process has been streamlined so you can simply register for an exam and pay for it with a credit card at prometric.com/oracle on September 1, 2010.

What Oracle website says:

Former Sun Certification Title New Oracle Certification Title Former Exam No. Oracle Exam No.
Sun Certified Java Programmer (SCJP) SE 6 Oracle Certified Professional, Java SE 6 Programmer CX-310-065 1Z0-851
Sun Certified Java Developer (SCJD) Oracle Certified Master, Java SE6 Developer CX-310-027, CX-310-252A 1Z0-856, 1Z0-855



For more information on further certification and structure changes, click here or for a pdf download, click here.

Benefits of the Oracle Certification Program are Added Credibility, Great Job Opportunities, Open Line of Communication with Oracle and Access to the OCP Member Only Website.

Prometric experience

I visited the Prometric site(prometric.com/oracle) and found out the following:
  1. One needs to register in order to book an appointment. Also if you have given any other Prometric organized exam like CAT, you can use the Prometric Testing ID from that exam in the course of the registration. Be careful while filing the security question and answer as there is no choice of questions available.
  2. On Tuesdays from 4:00 – 5:00 PM at most test sites, Prometric offers candidates of some programs the opportunity to experience the test centre and to go through all of the testing procedures prior to test day. One will also be able to sit at a test work station and go through a 15 minute fake test allowing you to use the hardware and become familiar with the equipment and question types. For more information, click here.
  3. The Sun Academic Initiative,212 exams are no longer available. This voucher is now valid for all 310 exams (Oracle).
  4. I opted for the Oracle Certified Professional, Java SE 6 Programmer (SCJP) course. There is no option for U.K English so had to chose U.S English instead.
  5. There is no option for payment in local currency. The cost amounts to $125 for this course.
  6. 190 test sites are available in India. One more pain is that there is no test location search option so you need to parse all the 190 test sites to get to yours. What a waste of time. I was lucky and got mine in the fourth page. In Hyderabad, there are 7 locations in total (Banjara Hills, RTC X Roads, Ameerpet, Paradise, Gandhi Medical college, Ram kote and Gachibowli).

All the folks out there planning for a certification, all the very best.

Sunit Ronnie Ghosh,
India.

Thursday, January 6, 2011

My Experiments With Computer Threats: Microsoft Security Essentials

I got my hands on a Personal Computer at the age of 16. That was 2002. I used to learn C++ then for my Senior Secondary elective in DPS, Bhilai.I was awed by the computational power and the exponential jump in the capabilities, creativity and productivity of a human being. Be it, omnipresence of knowledge of any kind or be it multimedia maze. It had all.

One more thing which made my jaws drop was the mysterious world of deadly Computer Viruses, wriggly Worms, traitor Trojans, malicious Malwares and suspicious Spywares. I always had an undisclosed and unexpressed respect towards the highly knowledgeable hackers and their deeds in the world of computers and Internet. I could never understand the working of a virus, worms or a Trojan.

Of course there were saviours but obviously with a price tag. All of my academic life I have never observed my friends or acquaintances using a paid subscription of an anti-virus software. So I too followed the path most trodden. Folks used to say, why to pay when there are so many other way. I too agreed. But when it strikes you hard and ruthless out of the blue, you are helpless. As we were just frivolous students experimenting and applying computers for our trivial usage we never used to mind the attacks on our online as well as electronic life. It was harmless. But it is not the case now. With so much of data, photos, plethora of online services like e-mail, social networking, banking, photo sharing, file sharing, messenger, blogs and other tid bits included makes our life so much dependent on the computer altogether, it is not the same now.

I have heard personal woes of password thefts, identity thefts and hacks resulting to damages ranging from just a simple HDD format to more serious financial loses and identity misuse. Like most of the crimes they are never reported. Sometimes lessons learnt and most of the times things go on just the same waiting for another such incident to happen.


When I bought my laptop, I got a year worth of subscription bundled with it. It was for the first time I was enjoying such luxury. It really worked well; almost 14 months of attack free experience ensured I never lost a second of my precious sleep over it.

Then the dreaded day came. A weeks ultimatum for the subscription renewal. How much? A few thousand bucks. I took a long breath and thought what a miserable life. Lifelong bondage. So now I have to pay subscription every year, for all of my life. I thought as if I was in a quagmire. I felt just as if I was in a quicksand of bludgeoning future payment occurrences.

On the second last day of the ultimatum, I gathered all my wits and energy and employed the services of the company named "Google". You must have heard of it. People say it is famous or something. So I gave it a change. I searched for "Anti-Virus Download free". And a page full of texts and links emerged. My eyes popped out reading one of the entries. Antivirus from Microsoft and that too free. Is it a dream? A dream come true? A dream in a dream? A dream which was a reality? Yes it was Microsoft Security Essentials for just Rs 0000.00 only for all the authentic Windows Operating System users all around the world.

I have been using it from past 2 weeks. It is working as smooth as butter and as cool as cucumber and has given me not a single chance of annoyance. Thanks. Recommended if you are still in the clutches of paid AV SW and more, if you are using some version with il(legal) means. I say, why to go for bread when you can have the entire plum cake.

From the website, a few lines:

Microsoft Security Essentials provides real-time protection for your home PC that guards against viruses, spyware, and other malicious software.
Microsoft Security Essentials is a free download from Microsoft that is simple to install, easy to use, and always kept up to date so you can be assured your PC is protected by the latest technology. It’s easy to tell if your PC is secure — when you’re green, you’re good. It’s that simple.


Keep safe, play safe. For download, click here.




Tuesday, January 4, 2011

OSGi

OSGi specification
The Open Services Gateway Initiative OSGi is an independent, non-profit corporation working to define and promote open specifications for the delivery of managed services to networked environments, such as homes and automobiles. These specifications define the OSGi Service Platform, which consists of two pieces: the OSGi framework and a set of standard service definitions. The OSGi framework, which sits on top of a Java virtual machine, is the execution environment for services. The OSGi framework was originally conceived to be used inside restricted environments, such as the set-top box.

The work behind OSGi began in 1999, when embedded systems vendors and networking providers came together to create a set of standards for a Java-based service framework that could be remotely managed. In the beginning, it was seen as a service gateway for home management, telematics, and mobile environments. Now, the industry is starting to expand to serve desktop, enterprise, and mobile integration as well. Every leading enterprise application server provider is using or intends to use OSGi to allow applications to be adapted remotely.


The OSGi framework
The framework can be divided in two main elements:
a. A services platform: It involves interaction between three main actors, service providers, service requesters and a service registry. A service is described as a Java class or interface, the service interface, along with a variable number of attributes, the service properties. The service registry allows service providers to be discovered through queries formulated in an LDAP syntax. Service providers and requesters are part of an entity called a bundle that is both a logical as well as physical entity.

b. A deployment infrastructure: Physically, a bundle correspond to a delivery and deployment unit that is materialized by a JAR file along with a file that contains information about the bundle, the manifest file. The OSGi framework provides mechanisms to support continuous deployment activities. These deployment activities include installation, removal, update, starting (activation) and stopping (de-activation) of a physical bundle. Once a bundle is installed in the platform, it can be activated if deployment dependencies that are associated to the bundle are fulfilled.
Deployment activities are realized according to a well defined series of states corresponding to the physical bundle life-cycle. The activation or de-activation of a physical bundle results in the creation or destruction of a unique logical bundle, materialized by an instance from a class inside the bundle called a bundle activator. When the instance is created, the execution environment calls an activation method that signals the logical bundle that it is active. When the physical bundle is de-activated, the execution environment calls a de-activation method. When the logical bundle is active, it can publish or discover services and bind with other bundles by accessing the framework's services registry. It can also be notified from changes that occur in the framework by subscribing as an event listener.


OSGi programming
We will demonstrate OSGi programming based on the open source Knopflerfish OSGi framework which is easy to install and provides a great desktop GUI. Download the framework from http://www.knopflerfish.org. To start the Knopflerfish Framework, you can now simply double-click on the framework.jar.

Creating your First Bundle in 5 easy steps

1. In Eclipse, create a new Java Project and import framework.jar in the classpath.

2. Create a manifest.mf file in META-INF folder and add the bundle properties like
Bundle-Name, Bundle-SymbolicName, Bundle-Version, Bundle-Description, Bundle-Vendor, Bundle-Activator, Bundle-Category and Import-Package.
Bundle-Activator tells the framework which class is your Activator class, this is a kind of “main”
class for your bundle.
The Import-Package property tells the framework that our bundle needs to have access to all classes contained in the org.osgi.framework package.

3. Create an Ant build file.

4. Create the Activator class by implementing two methods, start(BundleContext bc) and stop(BundleContext bc) of the BundleActivator interface in the implementation package.  Next, we create a Thread subclass. Finally, we have to create a new thread while the bundle is started (in the start() method) and we have to stop the thread once the bundle is stopped.

5. Build and install your First Bundle using Knopflerfish. The bundle is automatically activated and you should see a new icon in the upper left window.

Creating your First Service in 5 easy steps

Repeat the above steps for creating a new bundle and then follow the steps below:
1. Update the manifest.mf file by adding an Export-Package property so that later other services will be able to retrieve the service interface and use it.

2. Create the Service Interface in the interface package.

3. Create the Service Implementation in the implementation package.

4. Create an Activator that registers the Service by using registerService() of the BundleContext object in the start(). All registering operations are done via methods in the BundleContext object. This object is the glue between our bundle and the framework.

5. Build and Install the Service Bundle

Using other Services in 4 easy steps

Repeat the above steps for creating a new service and then follow the steps below:
1. Update the manifest.mf File by adding a comma and a new package name to the Import-Package header. We now declare, that our bundle needs to have access to the new package. A framework will always check that this package is available to the bundle before the Activator is started.

2. Retrieve a Service with the help of ServiceReference object from the BundleContext's getServiceReference() method passing the name of the service interface as argument. Once we have a ServiceReference object, we use the getService() method to acquire the service implementation object, cast it to Service and use it.

3. Using a ServiceListener to Dynamically Bind Services by performing the following steps
a. Create a object name filter
b. Using this filter add a ServiceListener by using BundleContext's addServiceListener().
c. Get service references as given in step 2 by using this filter.
d. Loop through all the references to check the ServiceEvent state
if ServiceEventType is Registered then create a new thread of the Service
if ServiceEventType is Modified then stop this thread and create a new thread of the Service
if ServiceEventType is unregistered then stop the thread of the Service
4. Using a ServiceTracker to track Services with the help of ServiceTracker class which monitors services. It is done by creating a implementation class of ServiceTrackerCustomizer consisting of methods addingService(), modifiedService() and removedService() and passing this class object to create an object of ServiceTracker class.

JavaFX: Unifying Desktops, Mobiles and TV

Hi Java Programmers,

Greeting!! How are you doing? For this article the target audience is the group of Java Programmers looking forward to graphics and related development using JavaFX and have no prior knowledge of the same.


Introduction
JavaFX is an expressive rich client platform for creating and delivering rich Internet experiences across all the screens of your life. Be it a 15'' desktop CRT/LCD or a 7'' Java enabled Mobile or a 37'' T.V, JavaFX applications will  be omnipresent.

Key features:

a. One-stop-shop expressive content design and development platform across desktop, browser, mobile, and television with a unified development and deployment model.

b. Applications can be distributed across billions of devices through the power of Java including Mobile and TV.

c. JavaFX Mobile brings expressiveness to Java ME, a best way to bring expressive, feature-rich content to mobile and television devices.

d. In mobile devices, JavaFX builds on top of the existing Java ME platforms to reduce implementation costs for device manufacturers.

e. Dramatically shorten your production cycle for design and development by using JavaFX Production Suite to incorporate multimedia assets from popular third-party design tools.

f. Powerful runtime: Leverage the extreme ubiquity, power, performance and security of the Java runtime.

g. With Java SE 6 update 10 and beyond, you can drag-to-Install applications from your browser directly onto your desktop.

Implementations of JavaFX

1. Applications involving images and its deployment.
2. Animation.
3. Video streaming and related functionality.

Learning JavaFX


1. We need to download Netbeans IDE 6.9.1 which has JavaFX development capabilities along with PHP, JavaScript and Ajax, Ruby and Ruby on Rails, Groovy and Grails, and C/C++. For Windows Platform click here to download the IDE.

2. After the download and installation, for getting started immediately with an interesting program, click here.


Hope you will have fun, with JavaFX. Do post your comments on how did you find it!


Warm wishes,
Sunit Ronnie Ghosh

Monday, January 3, 2011

Scala Wala Bhaiyya

Hi Java Programmers,

Here, I am sharing a bit of information on Scala, which I thought would be interesting to share with you all.

Introduction
Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application.

Scala is a pure object-oriented language. Scala is also a functional language. Scala is statically typed. Scala provides a unique combination of language mechanisms that make it easy to smoothly add new language constructs in form of libraries. Scala interoperates with Java and .NET.

Application in real world
At Twitter, the social networking service, Robey Pointer (An infrastructure engineer at Twitter) moved their core message queue from Ruby to Scala. This change was driven by the company's need to reliably scale their operation to meet fast growing Tweet rates.

Others:
Sony Pictures: middleware
Nature.com: infrastructure
SAP community: ESME company messaging
Reaktor: many different projects
Mimesis Republic: multiplayer games
EDF: trading


Seamless integration with Java
Existing Java code and programmer skills are fully re-usable. Scala programs run on the Java VM, are byte code compatible with Java so you can make full use of existing Java libraries or existing application code. You can call Scala from Java and you can call Java from Scala, the integration is seamless.

Learning Scala
Some Java programmers find Scala a little alien at first but soon enjoy the concise way they can express their ideas as programs. Less key-strokes to make. Type inferencing, everthing-is-an-object, function passing, and many other features cut away unneeded syntactic overhead. For the small price of learning some new syntax, anyone can write programs with the same ease that they did in Java and steadily gain in problem solving power.
The best way to learn Scala depends on what you know already and the way you prefer to learn things.
If you have several years of Java programming experience then click here for great resources to start with. There we have a video talk given by Martin Odersky, the creator of Scala, then we have a website to try out some scala code firsthand, and then we have links to nice programming books on Scala.


Present
The current version of Scala is 2.8.1. It was released on November 9, 2010. You can download windows installation zip file from here.  To know what has changed in the previous versions, click here.

Happy Scala!!
Sunit Ronnie Ghosh

MBA Exam Calender 2010



Hi Guys,

Happy New Year 2011. Starting my blogomania this year with an informative article on my blog.
Yesterday, on 2nd January 2011, the great MBA season of the year 2010 ended with a bang. As promised, this season was full of energy and at the same time coldness. CAT exam was online for the second time, but this time without any glitch and was conducted in an overly efficient manner. I had to mandatorily sleep in the exam hall for over an hour, yaawwwn. Other exams, more or less, remained the same without any noteworthy change.

I am sharing with you the MBA Entrance Exam calender for this year. With a myriad of sources and websites available today, it is no doubt an arduous task to assimilate all the information regarding MBA exams in one place. This calender gives you all the basic information about the entrance exams conducted for top 20 B-Schools of India in chronological order.


# Exam Name Exam Date & Time Website Fee Results on
1 IRMA, Anand November, 14, 0915-1215 www.irma.ac.in 1000 27th Dec
2 CAT – IIM 27 Oct to 24 Nov, 2 Slots www.catiim.in 1400 12th Jan 2011
3 IIFT November,28, 1000-1200 www.iift.edu 1500 20th Dec
4 FMS December,5, 1400 www.fms.edu 750 Not Mentioned
5 JMET December,12, 1000-1300 web.iitd.ac.in 770 3rd Jan 2011
6 SNAP December,19, 1400-1600 www.snaptest.org 1550 12th Jan 2011
7 XAT January,2, 1030-1300 xlri.net.in 950 31st Jan 2011



MBA and its purpose: An observation and a survey


It was a nice and refreshing experience after 37 months at my job at Verizon, Hyderabad  as an Java Analyst to return to where I belonged, colleges. My love with colleges, I am sure will be shared by Lakhs if not Thousands of folks out there. My fascination with huge mega campuses and dudes and dudettes adorned in Blues has been there from long. It is a place where I want to be all of my life.

Some of the thoughts which I would like to share among the clan of MBA aspirants about the different reasons for joining this:

a. This is one of the futile and the most general answers one will utter and that is, Money. It is easy to reason anything on the basis of Money. After all, it is the purchasing power and the gateway to luxury and fame.

b. Corner office plush job. Want to wear suits, join MBA. Want to roam around the world in Business class or in Mercedes, welcome to MBA world.

c. 2 years of Post graduation from a Mast college will give you such a spring in life which the last 16 years of education couldn't.

d. MBA, a life skill from the core, a must learn.

e. Ease of availability and feasibility of higher education due to Education loans and support and hype in favour of an MBA degree.

f. Social status of being an MBA post-graduate.


I would like to wish all the aspirants of the MBA 2011-13 batch as well as the future "to-be" members of the clan all the very best in their endeavours.

Warm wishes.
Sunit Ronnie Ghosh