<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Rami Vemula</title>
	<atom:link href="http://www.intstrings.com/ramivemula/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.intstrings.com/ramivemula</link>
	<description>This blog is all about ASP.NET articles. It mainly concentrates on asp.net (.net both 3.5, 4.0) projects, jobs, book reviews and articles.</description>
	<lastBuildDate>Mon, 16 Jan 2012 08:43:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Password security + MVC by Srinivas Alwala</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/password-security-mvc-by-srinivas-alwala/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/password-security-mvc-by-srinivas-alwala/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 13:09:45 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=1189</guid>
		<description><![CDATA[Hi Ravi Vemula, I have a doubt in the password security + MVC application topic. If we look at the code the password is passing as plain text over the channel. If we want to implement a internet website using MVC, i think this approach of implementation is not satisfactory as hackers can use a [...]]]></description>
			<content:encoded><![CDATA[<p>Hi Ravi Vemula,</p>
<p>I have a doubt in the password security + MVC application topic.<br />
If we look at the code the password is passing as plain text over the channel. If we want to implement a internet website using MVC, i think this approach of implementation is not satisfactory as hackers can use a tool which block the site prior gets posted completely when userid/password entered and steal the credentials and release to get posted.<br />
Kindly let me know how can we say this approach is secure one.</p>
<p>*For Security purpose, I am removing all the contact details mentioned by User in this post*</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/password-security-mvc-by-srinivas-alwala/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Being a Microsoft MVP for Second time</title>
		<link>http://www.intstrings.com/ramivemula/general/being-a-microsoft-mvp-for-second-time/</link>
		<comments>http://www.intstrings.com/ramivemula/general/being-a-microsoft-mvp-for-second-time/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 14:52:03 +0000</pubDate>
		<dc:creator>RamiVemula</dc:creator>
				<category><![CDATA[GENERAL]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/general/being-a-microsoft-mvp-for-second-time/</guid>
		<description><![CDATA[Good Day one and all, I wrote a post &#8211; Being a Microsoft MVP exactly one year back, and now time has yet arrived to narrate a similar post, but a year older and wiser post. Earlier this week I was re-awarded with Microsoft MVP 2012 by Microsoft Corporation. I thank Microsoft Corporation and many [...]]]></description>
			<content:encoded><![CDATA[<p>Good Day one and all,</p>
<p>I wrote a post &#8211; <a href="http://www.intstrings.com/ramivemula/general/being-a-microsoft-mvp/">Being a Microsoft MVP</a> exactly one year back, and now time has yet arrived to narrate a similar post, but a year older and wiser post.</p>
<p>Earlier this week I was re-awarded with Microsoft MVP 2012 by Microsoft Corporation. I thank Microsoft Corporation and many MSFT’s, who are consistently monitoring and managing many online communities to make sure right technology reach right people at right times for right problems. There are many great Microsoft Full Timers with whom I had long conversations over years and shared many technical perspectives, I may not be able to name each and everyone of them, but I thank all of them for their encouragement to me throughout.</p>
<p>Last year was a pretty busy year for me. I already narrated some of my experiences through a post – <a href="http://www.intstrings.com/ramivemula/general/happy-new-year-2012my-life-in-2011/">Happy New Year 2012 – My Life in 2011</a>. Because of my personal and professional commitments (and in fact strong commitments) I was not able to consistently support online community. Its been a hard year for me to manage lot of bits and pieces associated to me, I hope I managed everything with some if’s and but’s, end of the day I hope everyone is happy for being associated with me.</p>
<p>I thank my Family, Mentors, Teachers, Friends, Well Wishers and Colleagues for being a wonderful part in my last years accomplishment. I have had a lot of positive influences on me directly or indirectly by many people in 2011, so now it’s my part to share this award with everybody.</p>
<p>I thank my Readers and members of different Online Communities (in which I was associated) for sharing such great experiences of them. I made many friends online, with whom I had not only technical problem solving techniques but also many other things like Analytical Perspectives, Diversified thought process etc., were discussed and analyzed. I thank all of them from bottom of my heart for being such kind to me.</p>
<p>This year 2012 is going to be a well excited year to me. I have many interesting challenges on my plate right now. The biggest challenge is obviously my personal time allotment/management and prioritization. I am working on it right now, in fact I already laid out a comfortable, easy and convenient plan which gives me ample time to spend on this blog or in any online communities. I am planning to stay more focused on this Blog – change its theme, put up more interesting stuff weekly, concentrate more on thought provoking posts rather than providing technical solutions. At the same time, I want to concentrate on Technical communities, where we can find many real world challenges and where people are more excited to talk. I also planned for some certifications from Microsoft, may be not right away immediately but may be in the third quarter.</p>
<p>Lastly, It’s been always a pleasure to think about all the people whom I mentioned above. I thank everyone once again. See you guys soon in one more post.</p>
<p>Regards,</p>
<p>Rami.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/general/being-a-microsoft-mvp-for-second-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Restore a Database using PowerShell</title>
		<link>http://www.intstrings.com/ramivemula/articles/restore-a-database-using-powershell/</link>
		<comments>http://www.intstrings.com/ramivemula/articles/restore-a-database-using-powershell/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 11:02:11 +0000</pubDate>
		<dc:creator>RamiVemula</dc:creator>
				<category><![CDATA[ARTICLE]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/articles/restore-a-database-using-powershell/</guid>
		<description><![CDATA[<p>In the last post I narrated a PowerShell script which can backup a database - <a href="http://www.intstrings.com/ramivemula/articles/backup-a-database-using-powershell/">Backup a Database using PowerShell</a>. In this post I want to show how to restore a Database from a backup file using PowerShell.</p>]]></description>
			<content:encoded><![CDATA[<p>In the last post I narrated a PowerShell script which can backup a database &#8211; <a href="http://www.intstrings.com/ramivemula/articles/backup-a-database-using-powershell/">Backup a Database using PowerShell</a>. In this post I want to show how to restore a Database from a backup file using PowerShell.</p>
<p>The following code performs a restore operation &#8211; </p>
<p>&#160;</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:176e5721-edd7-46cb-917a-d95495c19cf4" class="wlWriterEditableSmartContent">
<pre class="brush: powershell;">#Loading required assemblies
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SMO") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoExtended") | Out-Null
[Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo") | Out-Null
[Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoEnum") | Out-Null

#Setting up arguments to variables
$Server = $args[0];
$BackupFile = $args[1];

#Handle Errors (if in case)
Trap
{
  $err = $_.Exception;
  while ( $err.InnerException )
  {
    $err = $err.InnerException;
    write-output ("Oops!!! There is a Problem -&gt; " + $err.Message);
  }
  return;
}

#If arguments are insufficient
if($args.count -ne 2)
{
	write-output "Usage:"
	write-output 'Syntax : "ServerName" "Backup file path to use"'
	write-output 'Example : "Rami-Server" "C:\BackUp\SampleDB_full_2011-10-06-04-04-37.bak"'
    return;
};

if(!(Test-Path $BackupFile))
{
    Write-Output ("InValid Backup File Path");
    return;
}

#Create SMO Objects
$server = New-Object Microsoft.SqlServer.Management.Smo.Server $Server
$backupDevice = New-Object Microsoft.SqlServer.Management.Smo.BackupDeviceItem $BackupFile, "File"
$Restore = New-object Microsoft.SqlServer.Management.Smo.Restore

#Set properties for Restore
$Restore.NoRecovery = $false;
$Restore.Devices.Add($backupDevice)
$RestoreDetails = $Restore.ReadBackupHeader($server) 

#Set Database Name
$Restore.Database = Get-ChildItem $BackupFile | % {$_.BaseName}

#Set Relocation Files
$RestoreDBFile = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile
$RestoreLog = New-Object Microsoft.SqlServer.Management.Smo.RelocateFile

#Set Logical and Physical File Names
$RestoreDBFile.LogicalFileName = $RestoreDetails.Rows[0]["DatabaseName"]
$RestoreDBFile.PhysicalFileName = $server.Information.MasterDBPath + "\" + $Restore.Database + ".mdf"

$RestoreLog.LogicalFileName = $RestoreDetails.Rows[0]["DatabaseName"] + "_Log"
$RestoreLog.PhysicalFileName = $server.Information.MasterDBLogPath  + "\" + $Restore.Database + "_Log.ldf"

Write-Output ("Restore Started at: " + (Get-Date -format yyyy-MM-dd-HH:mm:ss)); 

$Restore.RelocateFiles.Add($RestoreDBFile)
$Restore.RelocateFiles.Add($RestoreLog)

#Restore database
$Restore.SqlRestore($server)

Write-Output ("Restore Ended at: " + (Get-Date -format yyyy-MM-dd-HH:mm:ss));
Write-Output ("Restore completed with Database Name " + $Restore.Database);</pre>
</div>
<p>&#160;</p>
<p>Code was self explanatory, but I would like to narrate the common steps which I took in constructing this code –</p>
<ol>
<li>Above presented script takes 2 parameters as inputs – &quot;ServerName&quot; and &quot;Backup File path&quot;. </li>
<li>Then we perform some sanity checks for the inputs – File Existence etc.</li>
<li>Finally we perform Database Restore using Microsoft.SqlServer.Management.Smo.Restore and Microsoft.SqlServer.Management.Smo.RelocateFile (SQL Server Management Object – collection of objects that are designed for programming all aspects of managing Microsoft SQL Server), and then corresponding Transaction log restore. </li>
<li>We create a Restore object, then we initialize some properties for it. We also set logical and physical file names for the DB and Log files which are to be restored. Finally we use RelocateFile Object to relocate a file and then restore it.</li>
<li>In case of any error in the complete flow, there is Trap block which catches the exception and notifies PowerShell Console.</li>
</ol>
<p>Following Screenshots shows you the execution results and backup files –</p>
<p><strong>Execution in Console</strong></p>
<p><a href="http://www.intstrings.com/ramivemula/wp-content/uploads/2012/01/powershell_restore_execution.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="powershell_restore_execution" border="0" alt="powershell_restore_execution" src="http://www.intstrings.com/ramivemula/wp-content/uploads/2012/01/powershell_restore_execution_thumb.png" width="772" height="96" /></a></p>
<p>Now you can go and check in SSMS, newly restored database will be listed under databases node.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/articles/restore-a-database-using-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About Sending mail with PDF file attachment by Miketa Patel</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/about-sending-mail-with-pdf-file-attachment-by-miketa-patel/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/about-sending-mail-with-pdf-file-attachment-by-miketa-patel/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 06:44:51 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=1188</guid>
		<description><![CDATA[Hello, In your code i m facing some problem . When i run this code , I getting this error &#8221; The CLR has been unable to transition from COM context 0x31e320 to COM context 0x31e490 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait [...]]]></description>
			<content:encoded><![CDATA[<p>Hello,</p>
<p>In your code i m facing some problem . When i run this code , I getting this error &#8221; The CLR has been unable to transition from COM context 0x31e320 to COM context 0x31e490 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait or processing a very long running operation without pumping Windows messages. This situation generally has a negative performance impact and may even lead to the application becoming non responsive or memory usage accumulating continually over time. To avoid this problem, all single threaded apartment (STA) threads should use pumping wait primitives (such as CoWaitForMultipleHandles) and routinely pump messages during long running operations.&#8221;</p>
<p>Please reply me as soon as possible.Please help me for this error.</p>
<p>Regards,<br />
Miketa Patel</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/about-sending-mail-with-pdf-file-attachment-by-miketa-patel/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Backup a Database using PowerShell</title>
		<link>http://www.intstrings.com/ramivemula/articles/backup-a-database-using-powershell/</link>
		<comments>http://www.intstrings.com/ramivemula/articles/backup-a-database-using-powershell/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 17:31:36 +0000</pubDate>
		<dc:creator>RamiVemula</dc:creator>
				<category><![CDATA[ARTICLE]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=1225</guid>
		<description><![CDATA[Of late I was working a lot in administering SharePoint enterprise products developed by my Dev. team. Often I landed up with lot of repetitive work back and froth, especially with databases. I stepped back and went to my SQL Basis, I explored various options to perform my daily routine Database tasks but found PowerShell [...]]]></description>
			<content:encoded><![CDATA[<p>Of late I was working a lot in administering SharePoint enterprise products developed by my Dev. team. Often I landed up with lot of repetitive work back and froth, especially with databases. I stepped back and went to my SQL Basis, I explored various options to perform my daily routine Database tasks but found PowerShell as most flexible and easier way to automate various tedious/time consuming tasks in a fairly simple way.</p>
<p>I got started with very basic Database operations – Backup, Restore, Create, Remove etc., and I am continuing at this point of time in exploring different Cmdlets offered by PowerShell and in fact now I am a huge fan for the same.</p>
<p>In the present post, I want to share a simple script which backs up a Database along with its transaction log. In future I am going to share all the related posts – Restore, Multiple Databases Backup, Create Multiple Databases etc., first lets get into the some serious PowerShell code.</p>
<p>&#160;</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:736058aa-d4e1-4358-b442-b13172c9ea0c" class="wlWriterEditableSmartContent">
<pre class="brush: powershell;gutter:false;toolbar:false;wrap-lines:false;">#Loading required assemblies
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.ConnectionInfo');
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.Management.Sdk.Sfc');
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO');
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMOExtended'); 

    #Setting up arguments to variables
    $Server = $args[0];
    $Database = $args[1];
    $Dest = $args[2];            

    #Handle Errors (if in case)
    Trap
    {
      $err = $_.Exception;
      while ( $err.InnerException )
      {
        $err = $err.InnerException;
        write-output ("Oops!!! There is a Problem -&gt; " + $err.Message);
      }
      return;
    }

    #If arguments are insufficient
    if($args.count -ne 3)
    {
        write-output ("Usage:");
        write-output ('Syntax : "ServerName" "Dbname" "Destination dir"');
        write-output ('Example : "Rami-Server" "SampleDB" "C:\DatabaseBackups\"');
        return;
    };

    #Setting up servername
    $srv = New-Object Microsoft.SqlServer.Management.Smo.Server $Server; 

    #Check for Database name existance
    $found = $false;
    foreach ($db in $srv.Databases)
    {
        if ($db.Name -eq $Database)
        {
            $found = $true;
        }
    }

    if(!$found)
    {
        write-output ("Invalid Database name");
        return;
    }

    #Setting backup path when destination directory is not specified
    $defaultPath = $srv.Settings.BackupDirectory + "\";
    If ($Dest -eq "")
    {
        $Dest = $defaultPath;
        Write-Output ("Destination folder defaulted to : " + $srv.Settings.BackupDirectory);
    }

    #check for path existance
    if(!(Test-Path $Dest))
    {
        $Dest = $defaultPath;
        Write-Output ("Destination folder doesn't exist, so path defaulted to : " + $srv.Settings.BackupDirectory);
    }        

    Write-Output ("BackUp Started at: " + (Get-Date -format yyyy-MM-dd-HH:mm:ss));        

    #Setting up database
    $db = $srv.Databases.Item($Database);

    # Set BackUp Properties
    $timestamp = Get-Date -format yyyy-MM-dd-HH-mm-ss;
    $backup = New-Object Microsoft.SqlServer.Management.Smo.Backup;
    $backup.Action = "Database";
    $backup.Database = $db.Name;
    $backup.Devices.AddDevice($Dest + $db.Name + "_full_" + $timestamp + ".bak", "File");
    $backup.BackupSetDescription = "Full backup of " + $db.Name + " " + $timestamp;
    $backup.Incremental = 0;            

    # Starting full backup process.
    $backup.SqlBackup($srv);     

    # For db with recovery mode &lt;&gt; simple: Log backup.
    If ($db.RecoveryModel -ne 3)
    {
        $timestamp = Get-Date -format yyyy-MM-dd-HH-mm-ss;
        $backup = New-Object Microsoft.SqlServer.Management.Smo.Backup;
        $backup.Action = "Log";
        $backup.Database = $db.Name;
        $backup.Devices.AddDevice($Dest + $db.Name + "_log_" + $timestamp + ".trn", "File");
        $backup.BackupSetDescription = "Log backup of " + $db.Name + " " + $timestamp;            

        #Specify that the log must be truncated after the backup is complete.
        $backup.LogTruncation = "Truncate";

        # Starting log backup process
        $backup.SqlBackup($srv);
    }    

    Write-Output ("BackUp Finished at: " + (Get-Date -format  yyyy-MM-dd-HH:mm:ss));
</pre>
</div>
<p>&#160;</p>
<p>Code was self explanatory, but I would like to narrate the common steps which I took in constructing this code &#8211; </p>
<ol>
<li>Above presented script takes 3 parameters as inputs &#8211; &quot;ServerName&quot;, &quot;DatabaseName&quot; and &quot;Backup Destination directory&quot;. </li>
<li>Then we perform some sanity checks for the inputs. </li>
<li>Finally we perform Database backup using Microsoft.SqlServer.Management.Smo.Backup (SQL Server Management Object &#8211; collection of objects that are designed for programming all aspects of managing Microsoft SQL Server), and then corresponding Transaction log backup. </li>
<li>In case of any error in the complete flow, there is Trap block which catches the exception and notifies PowerShell Console. </li>
</ol>
<p>Following Screenshots shows you the execution results and backup files &#8211; </p>
<p><strong>Execution in Console</strong></p>
<p><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Powershell_Execution" border="0" alt="Powershell_Execution" src="http://www.intstrings.com/ramivemula/wp-content/uploads/2012/01/Powershell_Execution.png" width="500" height="84" /></p>
<p><strong>Result in Folder</strong></p>
<p><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Powershell_results" border="0" alt="Powershell_results" src="http://www.intstrings.com/ramivemula/wp-content/uploads/2012/01/Powershell_results.png" width="502" height="102" /></p>
<p><strong>GOOD TO HAVE</strong> – Using PowerShell Console to execute scripts works, but Windows PowerShell Integrated Scripting Environment (ISE) would be more apt for developing/debugging PowerShell Scripts. Check below image &#8211; </p>
<p><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.intstrings.com/ramivemula/wp-content/uploads/2012/01/image.png" width="723" height="404" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/articles/backup-a-database-using-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy New Year 2012&#8211;My life in 2011</title>
		<link>http://www.intstrings.com/ramivemula/general/happy-new-year-2012my-life-in-2011/</link>
		<comments>http://www.intstrings.com/ramivemula/general/happy-new-year-2012my-life-in-2011/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 09:14:46 +0000</pubDate>
		<dc:creator>RamiVemula</dc:creator>
				<category><![CDATA[ARTICLE]]></category>
		<category><![CDATA[GENERAL]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[World]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/general/happy-new-year-2012my-life-in-2011/</guid>
		<description><![CDATA[Hello All, First of all I wish one and all a very happy new year 2012, may all have peace and prosperity through out and may this year bring the lights of eternal happiness along with fragrance of everlasting blossoms of joy into your lives. Coming back its been quite a bit of time since [...]]]></description>
			<content:encoded><![CDATA[<p>Hello All,</p>
<p>First of all I wish one and all a very happy new year 2012, may all have peace and prosperity through out and may this year bring the lights of eternal happiness along with fragrance of everlasting blossoms of joy into your lives.</p>
<p>Coming back its been quite a bit of time since I talk to you folks in my blog. 2011 has been a pretty busy year for me, especially in my professional life and with my interaction with Microsoft technologies as a whole. Let me narrate my experiences in a gist.</p>
<h1><font size="3">Product Development</font></h1>
<p>In 2011, I was fortunate to get involved in a brand new product designed/released by my organization. Its a SharePoint Enterprise product targeting specific business owners who want to closely follow their finances and inventory as a whole. My contribution vested right from the starting of the product with business functional knowledge, and then I went through architecting SQL alongside closely working with UI devs to get it right and get it done. As a whole we (my organization) had a great breakthrough by shipping our product to our first client and we are excited with subsequent prospective sale enquiries which we are getting from potential customers. In 2012, we are looking ahead to make this product more sustainable, intuitive and flexible to our customers in terms of business value.</p>
<p>Apart from product development, I worked on with couple of teams on Services frontend. Its pleasure and fun to work with cross border teams on different technologies and with specific hard deadlines. Thanks for my mentors and team for their support and hard work, because of which we never went&#160; into a heart burned state which usually happens with many services/consulting projects. In fact I never got pressurized in my daily routine work. My hands are on the fly to say goodbye to 2011 with beautiful conclusions to couple of fantabulous projects. It always make me feel better looking at the cheers from my clients with a smile on their face saying GOOD JOB <img src='http://www.intstrings.com/ramivemula/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</p>
<p>Everything what so ever &#8211; we (Me, My Mentors, My Team) did so far is not a one night miracle achievement neither its going to be a one night stand. There is lot of hard work and thought process involved in making our journey pleasant and easy. Some core principles which I stick around for over a year, say Impact &amp; Risk Assessment, Focusing on Domain Knowledge, TDD, Resolving Dependencies, Cross border team Interactions etc. given me prominent results. We made up our minds to stick to our basics in the complete execution process and now we are here standing on a very robust base and uplifting ourselves and fellow partners in 2012.</p>
<h1><font size="3">Importance of Understanding Business process</font></h1>
<p>Over the year 2011, I went through a lot of case studies, no matter whether it is a success or failure there is always a lot to learn from these common ups and downs. At this junction, I would like to address one important concept which I noticed &#8211; &quot;Importance of Understanding Business process&quot;. Most of the folks who come across to me are of different kinds &#8211; some are exceptionally talented technical persons, some are completely non-technical business users, some are geeks etc. Irrespective of what kind you are, these people always focus on getting a solution to the clients BUSINESS problem. One common mistake what most often I come across is the level of thought process which needs to be done around the business problem which we are trying to solve. We got to remember that even a phenomenal technical solution might go useless if that does not solve customers business problem. So I would suggest to spent up enough time with your customers before you are trying to solve the problem technically.</p>
<p>Afore mentioned points are always a bit tricky to understand and implement. There are lot of if&#8217;s and but&#8217;s, do&#8217;s and don&#8217;ts wrapped around this concept especially in client interactions. The only one statement which made my life easier and better was &#8211; &quot;Ask Right questions at right times&quot;. And when you are anticipating certain risks, do convey and escalate them at proper times. When you start sensing something is going wrong, step back &#8211; think &#8211; talk &#8211; ask questions. One more important criteria which can influence overall goal is Prioritization, we should set up right priorities and re-visit them as we progress. </p>
<p>One last thing what I want to talk about is Ambiguity. Landing up in shady areas in software engineering is inevitable, most of the times but sometimes it can be avoided, I am the first one to be in that situation because of my job role <img src='http://www.intstrings.com/ramivemula/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . But often I see people getting confused, loose confidence and instill dis-interest because of this particular and peculiar property. There are and can be many reasons why we usually get into these ambiguous situations, some quick scenarios were communication sync, technical barriers, understanding business problem etc. To handle this property what I would suggest is to calm down, step back and re-visit the problem with proper HELP. Especially technical folks should focus on maintaining stability in their day to day job, rather than creating instability for themselves by panicking. Last but not least, I do enjoy this particular ambiguity for most of the time, because it makes me think and think better. It helped me growing not only in my professional career but also in my personal. I believe in – “Ambiguity never lasts”, so don’t get stressed of being wrong, enjoy in exploring the right ways.</p>
<h1><font size="3">People with me</font></h1>
<p>2011 has been an outstanding year for me because of some great conversations I had with my mentors (Venu, RK and Stephen). They thought me not only in the direction of professionalism but also in psychological perspectives which has significant impact on welfare of an organization. Right now while I am writing this sentence I was able to recollect topics of vast diversifications and interests starting from product development, management and to general topics like personal health care to present day international politics, were part of many conversations which I had with my mentors. Thank you one and all for such a great support, guidance and encouragement. Apart from these prolific people, I am blessed to work with such a wonderful and beautiful team. All team members are hard working, committed and strongly excited towards what they are doing in their routine jobs. We worked on different technologies across different platforms, but we never doubted about the completion of work, no matter what work we handle, it will be reaching to its business conclusion at the end of the day. One more interesting thing I remember was &#8211; with this team (US and India) work kept on running 24 hours a day, thanks to my folks back at US along with team in India for such a brilliant commitment and support throughout. Lastly, In 2011 I did interacted with many other beautiful people across boundaries &#8211; I wish one and all a very happy and bright new year 2012.</p>
<h1><font size="3">2011 Personal Life</font></h1>
<p>Hmmm&#8230;nothing much in personal life, I always had fun throughout the year with my family. Thank you Mom and Dad. Thank you all my family. Even though its only very small laps of time I spent with my family over 2011, I shared a lot of joy which brought me back to my real life to its fullest. I miss them a lot.</p>
<h1><font size="3">My Upcoming Perspectives</font></h1>
<p>Okay, here comes the interesting part for me. I oblige to the fact that my contribution to my blog/online community is very limited in 2011, so now I have to get back to my equilibrium with more consistent and systematic approach. I started planning it and this post was my first step. </p>
<p>As far as my future articles are considered, definitely majority of them are going to be on technical frontend, especially Microsoft technologies. But at the same time, I would like to concentrate more on definitive areas of expertise such as Project Management, Testing, Planning and Implementation (Back bones) for project, Source Control versioning, Dependencies Identification, Risk and Impact assessment and other related areas of making development process much better. I know many of my readers are technical folks, for them I would narrate posts varying from Administrative Scripting framework like PowerShell to Web technologies like ASP.NET, MVC, also from Mobile Technology for Windows Phone 7 Development to Enterprise Framework like SharePoint, Dynamics CRM. I would also put up considerable focus on Client side technologies like JQuery and Rich Application Frameworks like Silverlight. At the end, C# would be my buddy.</p>
<p>I am planning not to rush, so please bear with me. At this point of time, I thank all my readers for their interest in my blog, do please let me know if there are any specific areas of interest where you guys are expecting some blog posts from me. I may not be the right person to solve all queries but I will try my best to point you to the right direction.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/general/happy-new-year-2012my-life-in-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DateTime by DateTime Format Problem</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/datetime-by-datetime-format-problem/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/datetime-by-datetime-format-problem/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 13:19:08 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=717</guid>
		<description><![CDATA[Hello Sir.. Will u please help me to solve this Problem http://forums.asp.net/t/1670099.aspx/1?DateTime+Days+Cout]]></description>
			<content:encoded><![CDATA[<p>Hello Sir..<br />
Will u please help me to solve this Problem</p>
<p>http://forums.asp.net/t/1670099.aspx/1?DateTime+Days+Cout</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/datetime-by-datetime-format-problem/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dynamic created dropdownlist by Blue Goulding</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/dynamic-created-dropdownlist-by-blue-goulding/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/dynamic-created-dropdownlist-by-blue-goulding/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 13:10:44 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=718</guid>
		<description><![CDATA[I read you post on asp.net regarding Create Dynamic Dropdownlist Controls. I used this to development a very nice web applications. However to complete I have this issue. How to create a dropdownlist box and hard wire to another button so when the user changes the selection in the dropdownbox they can then click on [...]]]></description>
			<content:encoded><![CDATA[<p>I read you post on asp.net regarding Create Dynamic Dropdownlist Controls.  I used this to development a very nice web applications.  However to complete I have this issue.  How to create a dropdownlist box and hard wire to another button so when the user changes the selection in the dropdownbox they can then click on button2 two and the onclick event will get the values in the dropdownlist and write them to a msgbox. </p>
<p>It would be nice if the dropdownlist box could do this all on its own but I do not think that it can.  I appreciate you help.<br />
Thank you Blue</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/dynamic-created-dropdownlist-by-blue-goulding/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ASP.net by Rani</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/asp-net-by-rani/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/asp-net-by-rani/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 13:02:17 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=724</guid>
		<description><![CDATA[Problem with sending mail to many users who have der mail id stored in database.can w chat for while so dat u can find a solution to my problem my mail id XXXX@gmail.com]]></description>
			<content:encoded><![CDATA[<p>Problem with sending mail to many users who have der mail id stored in database.can w chat for while so dat u can find a solution to my problem</p>
<p>my mail id<br />
XXXX@gmail.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/asp-net-by-rani/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Design view in HTMLEditor by Preeti</title>
		<link>http://www.intstrings.com/ramivemula/asp-net/design-view-in-htmleditor-by-preeti/</link>
		<comments>http://www.intstrings.com/ramivemula/asp-net/design-view-in-htmleditor-by-preeti/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 12:57:34 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
				<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[USER TOPICS]]></category>

		<guid isPermaLink="false">http://www.intstrings.com/ramivemula/?p=771</guid>
		<description><![CDATA[I am unable to get design view in HTMLEditor, When i run the program it just show me html view but after click design view it&#8217;s disable.]]></description>
			<content:encoded><![CDATA[<p>I am unable to get design view in HTMLEditor, When i run the program it just show me html view but after click design view it&#8217;s disable.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.intstrings.com/ramivemula/asp-net/design-view-in-htmleditor-by-preeti/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

