Oxite - Open Source blogging platform from Microsoft

December 16th, 2008 by Praveen Modi
Microsofts Open source Blogging Platform

Microsoft released an alpha version of Oxite, an open source CMS (Content Management System) that developers can use to build sophisticated blogs or large web sites.

Microsoft Oxite offers almost everything you need in a good blogging platform - anonymous or authenticated commenting, comment moderation, gravatar support, RSS feeds, pingbacks, trackbacks, SEO optimized clean URLs, multiple blogs, group blogging and support for custom pages.

At first glance Oxite appears to compete with established blogging products including those from Six Apart.
Read more »

Bookmark and Share



Leveraging Model Driven Development

October 27th, 2008 by Jochen Toppe
Project Triangle

Project Triangle

Achieving efficiency in the software development process is one of the key motivators every team should strive for. Efficiency can be measured in a variety of ways. The most obvious measurements are cost, project timeline, and the feature set that can be implemented given the first two. In a sense, it boils down to the old project triangle (remember: pick any two of the criteria).

In essence, there is a trade-off between quality, timeline, and cost. For example, reducing the timeline at equal costs reduces quality just as implementing at a faster pace reduces quality. Yet I argue that the triangle approach is not necessarily valid anymore. Traditional development processes have clearly shown that just enhancing the timeline on a project to put special care into the design does not actually lead to higher quality software – quite the contrary.

Yet more dimensions are at play. The number of defects (“bugs”) found in a particular software directly translate into cost and time, especially when found late in development cycle, creating a dependency between testing quality, time, and cost. Inefficient software design increases the cost of introducing new functionality as requirements change and a lack of refactoring capabilities sooner or later lead to the need for a full re-development. The problems are amplified when the software spans multiple independent subsystems, which is often the case in modern web architectures which span across content management systems, web services, search engines, commerce engines, custom web applications, etc.

Agile development methodologies have tackled many of these problems in great detail through test-driven development (TDD) and time-boxed iterative release cycles. This article discusses a number of tactics you can deploy in addition to what you find in your agile toolkit: To speed up development and tackle complex problems with smaller teams in less time leveraging the key ideas of Model-Driven-Development (MDD).
Read more »

Bookmark and Share



CMIS - will it revolutionize the CMS industry?

October 10th, 2008 by Raymond Velez

Last year three major CMS/ECM vendors IBM/Microsoft/ECM came together to propose new standards that will change the CMS landscape the same way SQL 92 did for the database industry.  Content Management Interoperability Services (CMIS) standards cover services that allow interoperability between content stores.
These standards cover the three basic areas of Content Management Systems:

  • CMS basic operations - CRUD (Create, Retrieve, Update and delete) services, versioning and workflow
  • Content discovery - query services, search including a SQL like query
  • Domain model – object types, folder hierarchy, document, relationship and access rules

Previous interoperability proposals such as JSR 170/283 have not gained traction because they were purely Java based and were too function rich, forcing the vendors to make substantial investments with little or no market driven need.    Another standard WEBDAV, was too simple and relied solely on HTTP protocol, it had no concepts of content types or content relationships.

CMIS supports both a SOAP based interface and REST based interface, the latter is much easier to implement.  Last month EMC, Microsoft, IBM and Alfresco were able to implement a draft CMIS and test it on Sharepoint/Documentum/Filenet and Alfresco.

The proposed CMIS query supports SQL like terms and clauses such as SELECT, FROM, WHERE and CONNECT by clause.  The query can include based terms and clauses based on content metadata and property such as size, date etc.  Example query:

SELECT * FROM DOCUMENT WHERE ((CONTENT_STREAM_MIME_TYPE = ‘MSWORD’) AND (CONTAINS ‘Razorfish’))

This new draft CMIS standard creates a clear firewall between applications and content stores.  It will cut application development and integrations costs, and eliminate time learning vendor specific content access APIs.  Imagine being able to design an application that can access and manipulate content from any content and change the underlying content store by merely changing an entry in some property file.   For the vendors the outlook may be murky initially, it is possible that the number of competing CMS/ECM products may shrink.  Nevertheless, the market penetration of CMS products will increase dramatically and CMS/ECM may be as ubiquitous as databases.  Microsoft’s involvement brings up the possibility that all MS Office products may support direct check in/check out from CMIS based repositories.

The CMIS draft was submitted in September ‘08 to the standards body OASIS for public comment.   It is expected to be approved by middle of 2009.  The draft is also being backed by Oracle and SAP.

Resources

CMIS charter

The draft may be accessed here as a zip.

Bookmark and Share



Ready for Web 3.0/Semantic Web?

September 30th, 2008 by Raymond Velez

When mainstream media starts talking about SemanticWeb, one can infer that it is not just another buzz within research labs.  Recently the magazine The Economist, and BBC online covered this topic.  Early this month Thomson-Reuters announced a service that will help in Semantic Markup. 

SemanticWeb Primer

The term Semantic Web was first used by Sir Tim Berners-Lee, the inventor of World Wide Web, to be “… day-to-day mechanisms of trade, bureaucracy and our daily lives will be handled by machines talking to machines”.    The most significant aspect of semantic web is the ability of machines to understand and derive semantic meaning from the web content.   The term Web 3.0, was introduced in 2006 as a next generation web with emphasis on semantic web technologies.  Though the exact meaning and functionality in Web 3.0 is vague, most experts agree that we can expect Web 3.0 in some form starting in year 2010.

There are two approaches to extract semantic knowledge from web content.  The first involves extensive natural language processing of content, while the second approach places the burden on content publishers to annotate or markup content.  This marked-up content can be processed by search engines, browsers or intelligent agents.  This solution overcomes the shortcomings of natural language processing which tends to be non-deterministic; furthermore determining the meaning depends not only on the written text, but also on information that is not captured in written text.  For instance, an identical statement by Jay Leno or from Secretary Hank Paulson may have a totally different meaning.    

The ultimate goal of web 3.0 to provide intelligent agents that can understand web content , is still a few years away.  Meanwhile, we can start capturing information and start building constructs in our web pages to facilitate search engines and browsers to extract context and data from content.  There are multiple ways of doing semantic markup of web content that is understood by browsers and search engines.    

Semantic Search Engines

On Sept 22, 2008 Yahoo announced that it will be extracting rdfa data from web pages.   This is a major step in improving the quality of search results.  Powerset (recently acquired by Microsoft) is initially allowing semantic searches on content from wikipedia.org, which is a fairly structured content.  While Hakia uses a different approach, it processes unstructured web content to gather semantic knowledge.  This approach is language based and dependent on grammar.

Semantic markup s- RDFa, and microformats

W3C consortium has authored specifications for annotation using RDF an XML based standard, that formalizes all relationships between entities using triples.  A triple is a notation involving a subject, object and a predicate, for example “Paris is the capital of France” the subject being Paris, the predicate is capital, while ‘France’ is the object.  RDFa is an extension to XHTML to support semantic markup that allows RDF triples to be extracted from web content.

Microformats are simpler markups using XHTML and HTML tags which can be easily embedded in web content.  Many popular sites have already started using microformats.  Flickr uses geo for tagging photo locations, hCard and XFN for user profile.  LinkedIn  uses hcard, hResume and XFN on user contacts.

Microformat hCard example in html  and resulting output on browser page.

<div id=”hcard-Atul-Kedar” class=”vcard”>

 <span class=”fn”>Atul Kedar</span>

        <span class=”given-name”>Atul Kedar</span>

   </span>

   <div class=”org”>Avenue a Avenue A | Razorfish</div>

   <div class=”adr”>

       <div class=”street-address”>1440 Broadway</div>

       <span class=”locality”>New York</span>,,

       <span class=”region”>NY</span>

      <span class=”country-name”>USA</span>

   </div>

</div>

Atul Kedar
Avenue A | Razorfish
1440 Broadway
New York, NY USA

Microformat hCalendar entry example with browser view:

<div id=”hcalendar-Web-3.0″ class=”vevent”>

       <a href=”http://www.web3event.com/conference.php” class=”url”>

           <abbr title=”2008-10-16″ class=”dtstart”>October 16th</abbr> :

           <abbr title=”2008-09-18″ class=”dtend”>September 18th, 2008</abbr>

         <span class=”summary”>Web 3.0</span> at

         <span class=”location”>Sunnyvale, CA</span> </a>

        <div class=”tags”>Tags:

      <a href=”http://eventful.com/events/tags/web%203.0″ rel=”tag”> web 3.0</a>

      <a href=”http://eventful.com/events/tags/SemanticWeb” rel=”tag”> SemanticWeb</a></div>

</div>

 As you notice from the above examples microformats can be added to existing content and are interpreted correctly by the browsers.  There are many more entities that can be semantically tagged such as places, people and organizations.   Some web browser enhancements (Firefox) recognize these microformats and allow you to directly add them to your calendar or contacts by a single click.  

Automated Semantic markup services and tools

Another interesting development is in the area of automatic entity extraction from content, these annotation application or web services are being developed.  Thomson Reuters is now offering a professional service OpenCalais to annotate content. PowerSet is working on towards similar offerings.   These service reduces the need for content authors to painfully go thru the content and manually tag all relationships. Unfortunately, these services are not perfect and need manual crosschecking and edits.  Other similar annotation services or tools are Zementa, SemanticHacker and  Textwise.

Next Steps

As Web 3.0 starts to take shape, it will initially affect the front end designers involved with the web presentation layer, as organizations demand more semantic markup within the content.  In due course , CMS architects will have to update design of data entry forms, design of entity information records in a manner that facilitates semantic markup and removes any duplication of entity data or entity relationships.  Entity data such as author information, people information, addresses, event details, location data, and media licensing details are perfect candidates for new granular storage schemes and data entry forms.

 

 

Bookmark and Share



Serious Security Flaw in Google Chrome

September 4th, 2008 by Paras Wadehra

Security expert Aviv Raff discovered a flaw in the newly released Google Chrome browser. He set up a demo of the exploit here. This will download a java file to your desktop if you are using Chrome.

Chrome also has a potentially serious security flaw from the old version of WebKit it is based on. An attacker could easily trick users into launching an executable Java file by combining a flaw in WebKit with a known Java bug and some smart social engineering.

Meanwhile, researcher Rishi Narang disclosed another flaw that causes Chrome to crash just by visiting a malicious link and without user interaction. He setup a Proof of Concept at http://evilfingers.com/advisory/google_chrome_poc.php

This is especially embarrassing for Google as it promoted security in the new browser in its press release and even in the demo video they have on their website.

Bookmark and Share



Google Chrome - Why it is different?

September 3rd, 2008 by Salim Hemdani

Yesterday, Google launched its first beta version of open source web browser called Chrome. Some people consider this launch as Google’s attack on Microsoft’s IE and some regarded this launch as yet another browser to choose from. Google indirectly claims that market needed a fresh web browser. A browser that is written from scratch with a next generation thinking even though Chrome is built on WebKit an existing open source web browser engine. Google’s long term strategy behind this product is unknown but I believe it is the move Google should have made long time ago.

One of my old college used to say “Do not go under the spotlight if you cannot control the outcome on the stage”. Google’s business is solely based on internet and its growth. Google is under the spotlight on the stage of internet play from the beginning but it had zero control on the way people got to the internet and the way browsers interpreted the web pages. With Chrome, for which I predict it will have a substantial market penetration soon, Google will gain some control on the outcome.

Apart from the business strategy aspect, Chrome browser does have some neat technology advancements. Chrome has done every effort to make browser more stable, faster, clean, simple, efficient and safe. Few things that are specifically noteworthy are:

  • User controlled multi process browser which creates independent browsing environment making it fast, stable, scalable and safe.
  • Platform independent JavaScript Virtual Machine called V8 which converts JS source into native machine code for faster processing.
  • Smart conservative garbage collection methods for fast JS interpretation speed.
  • Open source Gears for development community to create additional features.
  • And lastly search feature for your browser history, suggestions integration on address bar, incognito mode for private browsing, sandboxing of plug-in controls, pop-up blocker, phishing sites security warning etc

Google launched Chrome only for Windows which forced me to restart my Mac in boot camp mode with Windows Server 2003. I am eagerly waiting for a Mac version which Google has promised to launch shortly.

– Salim Hemdani

Bookmark and Share



IE8 Beta 2 Launched

August 28th, 2008 by Paras Wadehra

The IE team launched IE8 Beta 2 which can be downloaded at http://www.microsoft.com/ie8.

You can watch videos of IE8 at http://video.msn.com/video.aspx?mkt=en-us&user=-3161786097973413883 and http://www.microsoft.com/windows/internet-explorer/beta/videos.aspx. IE8 is a very developer friendly browser. You can download add-ons for IE8 at http://www.ieaddons.com/. Some of my favorite add ons include Web Slices and Accelerators.

Some cool features of IE8 Beta 2 include color-coded tabbed-browsing and accelerator support. Accelerators are services that you access directly from the webpage in the context of what you’re doing, letting you bookmark, define, email, map and more with a simple selection. Even your search providers are available as Accelerators. Some Accelerators provide previews so that you can view the result without having to leave the current webpage. Clicking on an Accelerator opens a new tab with the full result. You can download accelerators from http://www.ieaddons.com/en/accelerators/

Also, there is better support for when website you are viewing in a tab crashes - now instead of closing the whole IE window along with other tabs open in the same window, only the tab with the crashing website will close!

Bookmark and Share



Microsoft adds new features to .NET

August 14th, 2008 by Paras Wadehra

Microsoft has introduced new features in .NET with their Service Pack 1 (SP1) release of .NET Framework 3.5 and Visual Studio 2008.

Most of the stuff included in the service pack releases is new features and functionality rather than bug fixes and updates to existing feature-set. For example, .NET Framework 3.5 SP1 adds a new concept called the .NET Framework Client Profile, which enables an application to be delivered with just what is needed to install and run the app, rather than the whole framework. This can reduce the size of installation files by 86.5 percent, according a Microsoft spokesperson. Other major features in .NET Framework 3.5 SP1 include a 20 to 45 percent improvement in Windows Presentation Foundation (WPF) applications and changes to the Windows Communication Foundation (WCF) to change the way data and services are accessed.

The changes in the Visual Studio 2008 SP1 and .NET Framework 3.5 SP1 are listed here.

Bookmark and Share



New social media offering

August 6th, 2008 by Raymond Velez
Digitage Web 2.0Image by ocean.flynn via Flickr

We just announced a new offering with our social-media partner Pluck and their product code-named AdLife. AdLife will inject social media features like customer comments and user-generated content into digital advertisements such as banner ads or micro sites - in effect, turning mainstream ads into social media opportunities distributed across the digital world.

From a technology community perspective we have worked with Pluck on several clients to bring social media features to client’s websites. Plucks services are available through software as a service which enables us to drive faster solutions for our clients. The are some key elements such as dealing with a AJAX/Flash/Silverlight integration and still enabling SEO. Unfortunately, search engines are not able to deal well with rich internet applications yet, but we have some ideas on how to deal with this.

That being said, I think there’s a couple of critical element to why we have to make our sites social.

  1. We are social beings, our sites should follow. Communities will help us make our sites better, by adding the right metadata through comments or confirming where we get it right or telling us where we get it wrong - wikipedia anyone:).
  2. Without bringing social technologies to our client’s sites, the sites we build won’t be found. Organic search engines depend on social to surface pages. Remember google bombing? That was enabled through blogging and trackbackids, a key aspect of social. If your site/page isn’t enabled socially, it won’t rank in google, live, and yahoo.
  3. Outside of organic search people read things on the web, so they can send them to their social graph. Again, we mush make it easy for people to connect with their social graph, so people can passively or actively tell their community about the content.

At Avenue A | Razorfish, we’re one of the largest buyers of online media in the world and we’re partnering with Pluck, a social media technology vendor serving 2.5 billion impressions a month to bring this to life. For more information read the press release or read David Deal’s blog.

Zemanta Pixie
Bookmark and Share



How cool is this new search engine - cuil.com ?

August 1st, 2008 by Salim Hemdani

By now almost everyone who keeps an eye on search market is aware of the launch of new search engine - cuil.com. And to my amazement most of us have already given a verdict on this new offering as to if this is a real Google killer or just another dying hope for those Google haters. Cuil has also got a lot of attention from Google lovers - this launch was a real attention grabbing hoax.

So what makes cuil.com center of attention?

  • Cuil.com is developed by couple of engineers who have a hand in developing Goggle’s search engine. This particular fact has given them a lot of credibility. 
  • Secondly, this search engine indexes many more pages than Google does. I did not know that Google does not index the entire world’s web pages – may be cuil indexes pages from other planet’s ecosystem too but any how this fact makes cuil.com an attractive offering. More pages means more results .
  • Finally, last but not least and I think most important is that cuil.com does not remember your search queries – a big win for those privacy advocates who are trying to get Google for a long time now.

So what is your verdict of this cool or not so cool offering? I will share my first experience and for those who believe in “first impression is the last impression” I did not have a good experience. My first hit to cuil.com on the day it launched resulted in a service not available page (too many hopefuls flocking on to cuil.com). Since then service has been bought-up and I have given it few more tries but I could not make up my mind.

As of today Google is still the kind of search for me and I bow to thee. What you guys think?

Bookmark and Share