Sunday, May 31, 2009

"bing" - Microsoft's NEW!! Search Engine


Microsoft Live Search is being revamped and rebranded as bing and will be officialy launched on June 2nd.
The new search engine which will be replacing Microsoft Live Search is categorized by some as a Decision Engine by others as a Discovery Engine and by me: YASE ( Yet Another Search Engine !)
What differentiates bing from traditional search engines is that it tries to cleverly show results of internet searches in a more informative way .. with categories of results and relevant information on the side ..
It's is a cross between WolframAlpha , Google and Ask search engines ..
Most people are used to using Google despite it's biased results, and it became a habit to reach for Google when searching the internet .. in-fact the word Google was officially included in Oxford's English Dictionary as a verb meaning “to search the net ..”
So will we see "bing"as a synonym to the verb "google" ..

Saturday, December 06, 2008

Development of Software Development ! ( no pun intended)

Sometimes using a highly technological tool primitively is the first step towards understanding the tool and inevitably utilizing it to the limits as time passes by … and experience accumulates

But staying away and refraining from using the newest tools & languages for software development based on the pre-assumption of difficulties and inability to understand such technologies would surely keep one at the status quo ..

That's why you see people sticking to their old habits and afraid to try newer and emerging technologies … In the past when Microsoft’s Visual Basic (VB) was released I remember keeping away from using it .. until the second release was out .. I read several articles in magazines about how great VB was .. So I started using VB .. developing simple solutions and applications within the framework of my knowledge that covered FoxPro, Fortran, BASIC & Assembler … and as I progressed I started shifting my mind-set from the old way of doing things to Event driven visual metaphors ..

Eventually I reached the limits imposed by VB and switched to Delphi (Version 1) and had been using Delphi for the past 12 years
My approach and methodolgy for software development un-intentionally shifted towards OOPS (Object Oriented Programming) .. as Delphi was OOP from the ground up ..

Then came Microsoft’s Visual Studio and C#2 , which I started considering as an alternative to my then current development tools .. I started trying and testing the various features of this development environment and C#2 .. but I preferred sticking to Delphi due to the fact of my fluency in the language and deep understanding of it’s VCL class libraries ..

Then came Visual Studio 2008 and C#3 with a lot of new and powerful technologies such as LINQ which was architected by Delphi’s Anders Heijlsberg .. under the cover the soul of Delphi still exists in these new offerings .. so I found the path of moving from Delphi to VS (C#3 ,.NET & LINQ) more promising with a potential of attaining fruitful results in developing better applications and solutions ..

This switch inadvertently did not go as smoothly as expected ..due to the fact of differences between Delphis’ class library (VCL) and the .NET class library .. as well as the syntax variation between Pascal & C# … But after going through a phase of evaluation and testing of various programs .. and after experimenting with LINQ to SQL, LINQ to XML & LINQ to Objects .. I realized that the change was worth all the effort .. despite the fact that one would go through an initial phase of lower productivity … but now I never look back and never regret making such a switch .. as I found the newer tools and development language ( C#3, .NET & LINQ) much more efficient in producing working applications in a much shorter time and less code … and un-intentionally I found myself moving on to Functional Programming which is seen as the future paradigm of software development ..

( N.B. This blog post is a reply to a friend’s blog.)

Wednesday, June 18, 2008

Microsoft's Visual Studio 2008 - LINQs

Recently Microsoft released Visual Studio 2008 ...
many new features and technologies are added to this new release of VS2008
One of the most powerful new features is LINQ ( Language Integrated Query ) which brings VS2008 closer to being a RAD ( Rapid Application Development ) environment ...

I was reading a lot about LINQ in MSDN , blogs , webcasts ... etc
The best reading I suggest for you to familiarize yourself with LINQ is a couple of great posts by Scott Gutheri ..

Here are some links to these great posts ...

Part 1: Introduction to LINQ to SQL
Part 2: Defining our Data Model Classes
Part 3: Querying our Database
Part 4: Updating our Database
Part 5: Binding UI using the ASP:LinqDataSource Control
Part 6: Retrieving Data Using Stored Procedures
Part 7: Updating our Database using Stored Procedures

Another good reading is the posts from Granville Barnett titled Introducing LINQ.

I've started using LINQ in developing DB applications, and now when you look at my code you would see more Business Logic rather than code plumbing ..

In the future you'll be seeing many LINQ based database applications .. as such technology is so powerful in it's expressiveness .. BUT to really start using it you would have to delve deep in C# and .NET .. and start reading about Lambda Expressions, Anonymous Delegates, Extension Methods , Anonymous Types ..... as well as ADO.NET ...

Wednesday, January 16, 2008

Comparing Microsoft SQL Sever Enterprise & Standard Editions

I've always been asked the question about the differences between Microsoft SQL Server 2005 Standard & Enterprise Editions ..
Here is a summary of the features that are offered in the Enterprise Edition and lacking in Standard Edition :

  • Scalability and Performance:
    - Partitioning :- Support for large-scale databases
    - Parallel Index Operations:- Parallel processing of indexing operations
    - Indexed Views :- Indexed view creation is supported in all editions. Indexed view matching by the query processor is supported only in Enterprise Edition
  • High Availability:
    - Online Indexing
    -
    Online Restore
    - Fast Recovery :- Database available when undo operations begin
  • Integration and Interoperability:
    - Integration Services Advanced Transforms :- Includes data mining, text mining, and data cleansing.
    - Oracle Replication :- Transactional replication with an Oracle database as a publisher

  • Business Intelligence:
    - Scale Out Report Servers
    - Data Driven Subscriptions
    - Infinite Click-troughs
    - Advanced Business Analytics
    :- Account intelligence, metadata translation, perspective and semi-additive measures.
    - Proactive Caching :- Provides automated caching for greater scalability and performance.
    - Advanced Data Management :- Partitioned cubes, parallel processing, server synchronization.
    - Full Writeback Support :- Dimension and cell write-back
    - Advanced Performance Tuning :- Additional options for tuning data mining models for the highest accuracy, performance, and scalability.
    - SQL Server Integration Services Data Flow Integration :- Perform data mining prediction and training operations directly in your operational data pipelines.
    - Text Mining :- Convert unstructured text data to structured data for analysis via reporting, online analytical processing (OLAP), or data mining.

For a full list of features please refer to SQL Server Comparison Chart on Microsoft's site.

Monday, December 03, 2007

Visual Stodio 2008 - The Declarative LINQ Factor

One of the great additions to Visual Studio 2008 in C# 3 is LINQ
which stands for Language Integrated Query ...
LINQ enables you to program declaratively instead of imperatively
i.e. you declare what you want to be accomplished .. but you do not have to tell how things would be done in your programmes ... just like what SQL offered for database programming ..

Here is a bunch of very interesting links that explain usage and capabilities of LINQ ..

Thursday, November 08, 2007

Classmate PC as an Alternative to OLPC

Recently Intel announced a deal with Libya for the supply of 150000 cheap PCs destined for schools .. This seems to be a change in Libya's recent intention to buy the competing product OLPC ...



The Intel Classmate PC specifications ..
  • CPU: 900MHz Intel Mobile processor
  • RAM: 256MB
  • Display: a meagre 7" LCD with a max resolution of 800x480
  • Power: Six-cell battery ( provides up to 4 hours)
  • Storage : 1GB NAND flash drive
  • Networking: built-in Ethernet and wireless 802.11G
  • Plus a built-in keyboard and a touch-pad plus an optional wireless pen device.
  • Multimedia: built-in speakers and microphone.
  • Operating System: Windows XP also supports Linux


Initial price for the model is around $200 but is expected to climb to $400 upon launch... and at this price one would rethink paying such money for such a gadget ... Wouldn't it be better if the quantity is reduced in order to cater for better specifications ... higher speed and a larger display .. more RAM .. a built in CD/DVD Drive .. USB support ..

Wednesday, November 29, 2006

Improving Full Text Search in Documents

In the past years Desktop Search and Enterprise Search Appliances had seen increasing usage throughout the world ..
However a simple search would usually lead to a long list of what is called "Relevant Documents" .. that were ranked by an algorithm which treats all text in a document equally..

But let us assume a typical document with the following content :
  • Document Name
  • Document Title
  • Section Headings
  • Paragraphs
  • Footnotes
  • etc...

If one is searching with a naked eye , surely the bolder and bigger the text.. the higher relevance it would be given .. So if a searched phrase or word occurs in a section heading in one document and occurs in a foot note in another document .. The search engine should rank the former document higher than the latter ..This would require Search Engines that understand the formatting and structure of the document and would result in more intelligent ranking algorithms ..
So perhaps in the future we will have a "Text-Format-aware" search engines ..
Maybe you should get started creating "Format-Aware" search filters for alltypes of documents (Word DOC, PDF, XLS ..etc ..) that can understand the formatting and structure of documents and hence will produces a more realistic ranking ...
Looking forward for your comments and feedback .. ;-)