What makes a Rich Internet Application (RIA)

Recently I had a discussion on LinkedIn that was spurred by the question ‘How Do I learn JavaScript’.  The conversation took place in the RIA group so the context of the question was learning JavaScript to level to build RIA’s.  During the conversation thread there were a lot of individuals making the argument about Flash/Flex, Silverlight and Java applets are the only true platforms that support the creation of RIAs.  While this may have been the case several years ago in today’s world JavaScript frameworks have been making huge inroads into RIAs.  According to Wikipedia an RIA can be defined as:

Rich Internet Applications (RIAs) are web applications that have many of the characteristics of desktop applications, typically delivered either by way of a site-specific browser, via a browser plug-in, or independently via sandboxes or virtual machines.[1] Adobe Flash, Java and Microsoft Silverlight are currently the three top frameworks, with penetration rates around 95%, 80% and 45% respectively. Continue reading