Friday, April 19, 2024

Multiparadigmatic .NET - Ted Neward

Here is a collection of articles compiled by Ted Neward regarding the various programming approaches within the .NET Framework that every software designer or architect should be aware of. He takes us into a deep understanding of the various techniques and uncovers the beauty of some of the technology out there.


  1. Multiparadigmatic .NET - Part 1 - He discusses the types of developer background that are part of the .NET community
  2. Multiparadigmatic .NET - Part 2 - Discussion on a design problem involving commonality and variability.
  3. Multiparadigmatic .NET - Part 3 - Discussion on how the old styled procedural programming has been helpful in various places.
  4. Multiparadigmatic .NET - Part 4 - Discussion on how re-usability and commonality is achieved via object oriented programming and some of the pitfalls of object oriented design.

Tuesday, April 16, 2024

Obituary - Rosmin Maharoof

Keep chasing your dreams! One day you will live the dream!



Rosmin Maharoof (An Astrophysicist Dreamer)

என்னிலும் ஒரு வயது இளையவன்...

2004-2005 காலப்பகுதியில் புத்தளம் ஸாஹிராவின் Head Prefect...

உன் பிரிவு செய்தி கேட்டு அதிர்ந்து போனேன்...

அன்று கிடைத்த Limited வழிகாட்டலினால் Bio Science ஐ தேர்வு செய்தாய்...அது பல்கலைக்கழக தேர்வுக்கு சோபிக்கவில்லை...

இருந்தும் உன் கனவும் தேடலும் வேறாக இருந்தது...

அது புத்தளம் வாலிபர்களுக்கு அந்நியமான தேடல்...ஆம்...
விண்ணின் விந்தைகளில் உனக்கு இருந்த தீராத காதல்...

உனது தொடர் ஆய்வுகளின் பிரதி உபகாரமாக அமெரிக்க விண்ணியல் நிறுவனம் ஒன்று உன் பெயரில் நட்சத்திரம் ஒன்றை பெயரிட்ட ஆதாரத்தை என்னிடம் காண்பித்ததையும் மறவேன்...

பல கஷ்டங்களுக்கு மத்தியில் விண்ணில் பறந்து பார்க்க வேண்டும் என்ற கனவில் அமெரிக்கா சென்றாய்...

சில நல்ல மனிதர்கள் எதிர்ப்பார்ப்பு இல்லாமல் உன் பயணத்துக்கு உதவினர்...என்றாலும் அமெரிக்கா சென்றவுடன் Odd Jobs செய்து உழைத்த ஊதியத்தால் உனக்கு உதவியவர்களுக்கு அவ்வன்பளிப்புக்களை கடன் (நன்றிக் கடன்) என மீளச் செலுத்திய பெருந்தன்மையை என்னவென்பது..!

உனது நேர்மைக்கு நான் சாட்சி கூறுவேன். பாடசாலை முடிந்த காலங்களில் நாம் நேரில் சந்தித்தது ஓரிரு சந்தர்ப்பங்களே.."மபாஸ் கா" என்ற அழைப்பைத் தொடர்ந்த அந்த புன்முறுவலை எப்படி மறப்பேன்..!

பி.ப 04.00மணிக்கு ஜனாஸா எடுக்கப்படும் என்று அஸர் தொழுகையுடன் 03.45இற்கே உன் வீட்டுக்கு விரைந்த எனக்கு ஏமாற்றமே காத்திருந்தது. வழியில் சில மூத்த பெண்கள் "ஜனாஸா சென்று விட்டதே" என்றவுடன் ஒரு விதமான கலக்கமும் வாட்டமும் என்னை பீடித்தது. மஸ்ஜிதுல் பகா அருகில் நெருங்கும் போது ஜனாஸா தொழுகை முடிந்து கூட்டம் வெளியேறுகின்றது. "இதனையும் தவற விட்டோமே" என்று மேலிட்ட கவலையோடு மையவாடிக்குள் நுழைந்தேன்...

அருகில் செல்லும் Rosmin இற்கு முன்னைய வருட Head Prefect நண்பனிடம் ஜனாஸா எடுத்த நேரம் குறித்து முறையிடுகின்றேன்...என் முறைப்பாட்டை இறைவன் புரிந்து கொண்டிருப்பான். "யார் இன்னும் ஜனாஸாவை பார்க்கவில்லை?" என்று கப்று அருகில் இருக்கும் சகோதரர்களின் பக்கமாக சத்தம் கேட்கின்றது. "அல்ஹம்துலில்லாஹ்" என்று மனதுக்குள் கூறியவனாக, அவ்விடம் விரைந்து Rosmin இன் துயிலும் முகத்தை இறுதியாக ஒரு முறை பார்க்க கிடைத்தது. அல்ஹம்துலில்லாஹ்! மனதின் ஏக்கங்களை புரிந்த இறைவன் மிக மகத்தானவன்!

அவனது பால்ய வகுப்பு நண்பன் அஷ்ஷெய்க் Yasmin Mufthi அவர்களின் நினைவேந்தலுடன் கூடிய பிராத்தனையுடன் நண்பர்கள், ஆசிரியர்கள், பாடசாலை உறவுகள், குடும்பத்தார்கள் புடை சூழ இனிதே நல்லடக்கம் செய்யப்பட்டது.

 யா அல்லாஹ் என் அன்புக்குரிய தம்பி Rosmin இன் பாவங்களை மன்னித்து சுவர்க்கத்தின் பூஞ்சோலைகளில் நுழைவிப்பானாக!

Saturday, March 9, 2024

ரமழான் ஆனந்தமும், காஸா மன அழுத்தமும்

மார்ச் 10, 2024 (ஷஃபான் 28) அன்று WhatsApp குழுமங்களில் என்னால் பதிவிடப்பட்டது.

மார்க்க அறிஞரும், சொற்பொழிவாளருமான அஷ்ஷெய்க் உமர் சுலைமான் (Omar Suleiman) அவர்கள் கடந்த March 01, 2024 அன்று அமெரிக்க பள்ளிவாசல் ஒன்றில் நடாத்திய குத்பா பிரசங்கத்தின் ஒலிப்பதிவை கேட்கக்கூடியதாக இருந்தது. அந்த குத்பாவில் கூறப்பட்ட செய்திகளின் சுருக்கத்தை தமிழில் முன்வைக்க விரும்புகிறேன் 👇🏻:


ரமழான் மாதம் வருகிறது என்றாலே வழமையாக எம் அனைவருக்கும் ஒரு வகை உள்ளார்ந்த ஆனந்தம் பிறக்கும். ஆனால் இம்முறை ரமழானானது சற்று வித்தியாசமானது. காஸாவிலும், பாலஸ்தீனத்திலும் நடைபெறும் உக்கிரமான படுகொலைகளின் காட்சிகள், செய்திகள் எமது கணினி, Phone திரைகளை அடையும் போது எமது உள்ளங்களில் இருந்து அகற்றப்பட முடியாத தாக்கத்தை ஏற்படுத்தி விட்டுள்ளன. அதன் காரணமாக எமது உள்ளங்கள் பாதிக்கப்படுவது இயற்கையானது தான். அது தவறில்லை.


என்றாலும் இந்த நிலைமையை எவ்வாறு எதிர்கொள்வது? உலக நாடுகளின் கையாலாக தன்மையினால் ஓர் பாலஸ்தீன சகோதரரின் உடலம் சிதறிச் சின்னாபின்னமாகி எம்மை கடும் கவலையில் உலுக்கும் அதே வேளையில், குறித்த சகோதரரின் புனித ஆத்மா இறைவனிடம் சென்று விட்டது என்ற ஓர் திருப்தியை அடைகின்றோம்!🪽


அது எவ்வாறு முடியும்?? ஓர் கடும் துயரிலிருந்து சடுதியாக ஆனந்தம் அடையும் நிலைக்கு எவ்வாறு ஓர் மனிதனால் மாற்ற முடிகின்றது? அதற்கு ஈமானைத் தவிர வேறு விளக்கம் இல்லை சகோதரர்களே. நபி (ஸல்) அவர்களின் ஸீறாவிலும், அவரது தோழர்களின் வரலாறுகளிலும் இதற்கான ஏறாளமான உதாரணங்களை காண முடிகின்றது.🕊️


1️⃣ நபி(ஸல்) அவர்களின் இறுதி நாட்கள் பற்றி ஆயிஷா (ரழி) அவர்களின் ஓர் அறிவிப்பில் வரும் ஓர் விசேடமான விடயத்தை கவனிப்போம். நபி(ஸல்) தமது அன்பு மகளார் பாத்திமா ஸஹ்ரா (ரழி) அவர்களை அருகில் அழைத்து ஏதோ காதில் கூறினார்கள். அதனை கேட்ட பாத்திமா (ரழி) அவர்கள் கடுமையாக அழுதார்கள். சற்று நேரத்தில் மீண்டும் அவர்களை அழைத்து ஏதோ ஒன்றை காதில் கூறினார்கள். இந்தச் சந்தர்ப்பத்தில் பாத்திமா (றழி) அவர்கள் சிரித்தார்கள். அதனை ஆச்சரியத்துடன் அவதானித்த ஆயிஷா (ரழி) அவர்கள், "ஒருவர் கடும் துயர் ஒன்றிலிருந்து சடுதியாக ஆனந்தம் அடையும் நிலையை நான் கண்டதே இல்லை", அதற்கான காரணத்தை பாத்திமா (ரழி) அவர்களிடம் வினவிய பொழுது,


"முதலில் நபி(ஸல்) என்னை அழைத்த பொழுது தான் இவ்வுலகை விட்டு விடைபெற போகும் செய்தியை கூறினார்கள். அதனை கேட்டு அழுதேன். மீண்டும் என்னை அழைத்து 'நானும் அவருடன் விரைவில் சுவனத்தில் இணைய' இருக்கும் செய்தியை கூறிய பொழுது ஆனந்தத்தால் சிரித்தேன்" என்றனராம் பாத்திமா (ரழி) அவர்கள். அதன்படியே நபி(ஸல்) அவர்களின் மரணத்துக்கு பிறகு அவர்களின் குடும்பத்தில் மரணித்தவர்களுள் முதன்மையான வராக பாத்திமா (ரழி) அவர்களே காணப்பட்டார்கள்.


2️⃣ ஆயிஷா (ரழி) அவர்கள் தமது தந்தை அபூபக்கர் (ரழி) அவர்களைப் பற்றி குறிப்பிடும் பொழுது:


"நபி(ஸல்) அவர்கள் ஹிஜ்றத்துக்கு தம்முடன் புறப்பட தயாராகுமாறு கூறிய பொழுது,

என் தந்தையை போல ஆனந்தத்தால் கண்ணீர் வடித்த எவரையும் நான் கண்டதில்லை" என்கிறார்கள்.


3️⃣ நபி(ஸல்) அவர்கள் விண்ணுலக பயணம் மேற்கொண்ட பொழுது ஓர் மனிதரை காண்கிறார்கள். அவர் தனது வலப்பக்கமாக திரும்புகின்றார், அங்கு சில ஆன்மாக்கள் அவரை கடந்து செல்கின்றன. சிரிக்கின்றார். அப்படியே தனது இடப்பக்கமாக திரும்புகின்றார், அங்கும் மேலும் சில ஆன்மாக்கள் கடந்து செல்கின்றன. உடனே அழுகின்றார்.


இதனை அவதானித்த நபி(ஸல்) ஆச்சரியத்துடன் ஜிப்ரீல் (அலை) அவர்களிடம் "இது யார்?", "இங்கு என்ன நடக்கிறது" என்று வினவிய பொழுது, ஜிப்றீல் (அலை) அவர்கள்,


"இவர் தான் அபுல் பஷர், உங்கள் தந்தை ஆதம் (அலை). அவரது வலப்பக்கமாக உள்ள ஆன்மாக்கள் சுவனத்துக்காக நிர்ணயிக்கப்பட்ட வை, இடப்பக்கமாக உள்ள ஆன்மாக்கள் நரகத்துக்காக நிர்ணயிக்கப்பட்ட வை" என்றனராம்.


இந்தச் செய்தியின் படிப்பினையில் ஓர் உண்மை புலப்படுகிறது. ஓர் ஆனந்த நிலையில் இருந்து சடுதியாக துயர் நிலைக்கும், துயர் நிலையிலிருந்து ஆனந்த நிலைக்கும் மாற்றமடைவது இறைவன் மனிதனுக்குள் ஏற்படுத்திய ஓர் தன்மையாகும். ஸஹாபாக்கள் ஓர் துயர் நிலையை அடைந்தால் அப்படியே மனம் உடைந்து போகும் நிலைக்கு செல்லவில்லை, மாற்றமாக அதிலிருந்து விரைவாக சுதாரித்து மனதை  தேற்றிக் கொள்ளும் ஓர் பயிற்சியை நபி (ஸல்) அவர்களிடம் கற்றார்கள்.


4️⃣ பத்ர் யுத்தம் முஸ்லிம்களுக்கு கிடைத்த மிகப்பெரிய வெற்றி. அக்காலத்து ஃபிர்அவ்ன் ஆக செயற்பட்டவனான அபூஜஹ்ல் அழிக்கப்பட்ட மிகப் பெரிய வெற்றி. இந்த வெற்றிவாகையோடு மதீனா வந்து சேர்ந்த பொழுது நபி(ஸல்) அவர்களுக்கு ஓர் மிகப் பெரும் துயரச் செய்தி காத்துக் கொண்டு இருந்தது. தமது அருமை மகளார் ருகையா(ரழி) மரணித்த செய்தி தான் அது.


இந்த நிலைமையை சற்று கற்பனை பண்ணிப் பாருங்கள் சகோதரர்களே! அல்லாஹ் ஏன் இந்த நிலைமையை ஏற்படுத்த வேண்டும்? ஓர் மிகப் பெரிய வெற்றியின் பொழுது ஓர் கடுமையான துயரத்தை ஏற்படுத்துவதால் எதனை அல்லாஹ் கற்பிக்கின்றான்??


இன்னும் பல ருகையாக்கள் மனித அநீதியால் மரணிக்க இருக்கின்றார்கள்! 


மேலும் பல பத்ர் களங்களுக்கு முஸ்லிம் கள் தயாராக வேண்டும்!...என்பதுவே அதன் படிப்பினையாக கொள்ளலாம். இன்று பலஸ்தீன இனப்படுகொலை ஓர் பத்ர்!


5️⃣ மக்கா வெற்றியின் பொழுது அபூபக்கர் (றழி) அவர்களின் தந்தை அபூகுஹாபா அவர்கள் இஸ்லாத்தை ஏற்றுக் கொண்டார்கள். அச்சந்தர்ப்பத்தில் தமது தந்தையை மிக்க மகிழ்ச்சியுடன் ஆரத்தழுவும் பொழுது நபி(ஸல்) அவர்களை காண்கிறார்கள். உடனே அபூபக்கர்(றழி) அவர்களின் கண்கள் குளமாகின்றன. நபி(ஸல்) அவர்கள் தமது தந்தையை போல கருதிய அபூதாலிப் அவர்களுக்கு இந்த சந்தர்ப்பம் கிடைக்கவில்லையே என்ற ஏக்கம் நினைவுக்கு வந்து அதே தருணத்திலேயே நபி(ஸல்) அவர்களுக்காக அழுகின்றார்கள்.


இன்றைய குத்பா வுக்கு பின்னர் எம் மத்தியில் சமூக சேவைகளில் ஈடுபடுகின்ற சகோதரர் பாயிஸ் அவர்களின் தாயாரின் ஜனாஸா தொழுகை நடைபெற இருக்கின்றது. நான் உட்பட எம்மில் பலரையும் அந்த தாயாரின் மரணம் கவலைக்கு உள்ளாக்கி இருக்கின்றது. பயபக்தியுடன் வாழ்ந்த ஓர் சகோதரி. அல்லாஹ் அவர்களின் பாவங்களை மன்னித்து மேலான  சுவர்க்கத்தை நல்க வேண்டும்.


அதே சமயம், அத்தொழுகைக்கு பின்னால் இன்னொரு முக்கியமான நிகழ்வு நடைபெற இருக்கிறது. இங்கே ஓர் சகோதரர் வந்து இருக்கின்றார். அவர் இஸ்லாமிய ஷஹாதத் கூறும் நிகழ்வும் நடைபெற இருக்கிறது. ஆகையால் சகோதரர்கள் அனைவரும் இரண்டு நிகழ்வுகளிலும் பங்கு கொள்ளுமாறு அன்பாக கேட்டுக் கொள்கிறேன்.


இது தான் இறை நியதி. ஒருவரை புதிய வாழ்க்கைக்காக அனுப்பி வைக்கின்றோம்; இன்னொருவரை புதிய வாழ்க்கைக்குள் வரவேற்கின்றோம்.


இது இறைவனின் அமைப்பில் உள்ள குளறுபடி அல்ல. யதார்த்தம். இதனை சரியாக புரிந்து வாழ்க்கையை எதிர்கொள்ளும் மனப்பக்குவத்தை வளர்த்துக் கொள்வோமாக!


யா அல்லாஹ் காஸா, பாலஸ்தீன பிரதேசம் மற்றும் உலகில் வாழும் அனைத்து முஸ்லிம்களுக்கும் இந்த ரமழானில் உனது அருளை சொரிவாயாக! ஆமீன்!


தமிழில்: S.M.M.Mafaz

March 10, 2024

Thursday, May 18, 2017

Smart Resizing of Remote Desktop Resolution

I recently tried to remote login from a Windows 7 machine to a Windows 8.1. Everything worked fine except for the resolution became too low. Though the remote desktop resolution was showing the correct values, yet the contents were so large and annoying. To make things harder, even the remote desktop resolution settings were uneditable. After trying out various option, I figured out that the adding the following line to the end of the .rdp file did the trick:

smart sizing:i:1

Thanks for the tip from: https://support.smartbear.com/testcomplete/docs/testing-with/running/via-rdp/smart-resizing.html

Sunday, May 31, 2015

Auto Expand WPF TextBox Height


There weren't many direct explanations on the internet to achieve this, so I thought of briefly blogging it here. If you want to auto expand the Textbox to a certain height and then stop and enable the vertical scroll bar from that point onwards, please use have a look at the following sample Textbox declaration in XAML:

   <TextBox Width="500"
       
        MinWidth="100"

        Margin="{StaticResource TextCommentMargin}" 
                                                                            VerticalContentAlignment="Center" 
                                                                            VerticalAlignment="Center" 
                                                                            MinHeight="{StaticResource TextCommentHeight}" 
                                                                            MaxHeight="75.0" 
                                                                            Height="Auto"
                                                                            TextWrapping="Wrap"
                                                                            AcceptsReturn="True" 
                                                                            VerticalScrollBarVisibility="Auto">

The important properties to enable this auto expand feature are; MaxHeight, Height, TextWrapping and VerticalScrollBarVisibility. 
  • Setting the MaxHeight to a certain height limits the Textbox from growing beyond that limit
  • Setting 'Height' to 'Auto' (a non numerical value) is the core to this feature, which enable the textbox to grow as contents fit.
  • Setting TextWrapping to 'Wrap' basically breaks off the sentence when it reaches the tip of the width of the text box.
  • Setting VerticalScrollBarVisibility to 'Auto', will enable the vertical scroll bars, once the text attempts to go beyond the MaxHeight of the Textbox.
All other properties are optional. The AcceptsReturn property provides you with a choice that whether you need to accept carriage returns within the Textbox or not.

I hope this helps somebody.

Thursday, August 21, 2014

Using C# Ternary (?) operator statement as a method parameter


The '?' operator is one of the oldest conditional operators that has been coming along with object oriented languages such as C++, Java and C#. The most significant advantage of using it is it will reduce a couple of lines of code than using the traditional if-else or switch statements, where there is a need to return values.

I first came across the functionality and power of using this just a couple of years ago, while assigned with a task to re-factor some existing code of a senior. More often I have seen the use of this being used with assigning the results to variables. And subsequently my coding behaviour also followed suit. 


Recently I was wondering if the usage could only be limited to assigning variables, and tried adding the statement directly to a method passing it as a variable. It just works fine, since as long as the returning type matches the variable type of the method parameter, such an assignment succeeds. Though this maybe already a straight forward understanding for C# or Java experts, yet this explanation could serve for those in doubt, and to understand the beauty of the language. Ok, with out any further exaggeration, let's have a look at what I am talking about.

Lets assume you have a method to display a name by passing in a name parameter like the following:


Code:
void DisplayName(string name)
{
//
}

Now simply let's assume Two names, 'Ahmed' and 'Jack', and we are to display the name which has less than 5 characters and pass that name to the above method to be further processed. Using the ternary operator the approach would be:


Code:
string name1 = "Ahmed";
string name2 = "Jack";
var nameLessThanFour = name1.Length < 5 ? name1: name2;
DisplayName(nameLessThanFour);

Eliminating the intermediate variable assignment, this could be achieved also as the following:


Code:
DisplayName(name1.Length < 5 ? name1: name2);


Note : This approach would work only for methods that pass arguments by value and not for those that pass arguments by reference (i.e the arguments with ref and out keywords will not work).

Personally I would not recommend the over usage of this approach on method parameters as it could negate the very purpose of simplicity of reading (i.e You might end up with a longer line in the method parameters mixed up with '?'s, ':'s and ","s thereby making it complex to read).

I find the following scenarios where you can advocate this approach:
  1. Methods that have parameters which have a need to pass arguments which require results from a condition.
  2. Using this approach on no more than two or three arguments of a method to reduce reading complexity.
  3. Using this approach on methods that could be called on parts of other lengthy conditional statements such as switch or if-else. This way we could save a lot of unnecessary variable assingments prior to method calls.
That's it. I would like to hear opinions of others on this. Happy Coding ahead...!

Tuesday, August 5, 2014

Operation Protective Edge இல் கொல்லப்பட்ட ஷஹீத் ஒருவருக்கான இரங்கல் செய்தி


Abdul-Hamid Mohammad Abdul-Hamid Al-Maghrabi, 31 வயதான இவர் கடந்த 2014, ஜூலை 26 ஆம் திகதி காஸாவில் கொல்லப்பட்டார். கடந்த ஜூன் மாதம் ரமழானுக்காக காஸாவை விட்டும் வெளியேறுவதற்கு இவருக்கு அனுமதி கிடைத்தும் அதை மறுத்தவராக "இந்த வருடம் எமது பள்ளிகளுக்கு இமாமாக இருக்க விரும்புகின்றேன்" என்றும் தெரிவித்திருந்தார். இந்த அருமையான ஷஹீதைப் பற்றி சகோதரி ஸைனப் அமீன் என்பவருடைய வலைப்பூவில் பின்வருமாறு அனுதாபச் செய்தி வழங்கப்பட்டிருந்தது:
சுப்ஹானல்லாஹ்..! இந்த காணொளி பல தரங்களில் சிறப்பு பெறுகின்றது.
1) முதலாவதாக, இந்த மனிதர் காஸாவை விட்டும் வெளியேறுவதற்கு அனுமதி வழங்கப்பட்டும் அதனை மறுத்துள்ளார். ஏன்? எதற்காக? அவரது வரிகளில்:
"இந்த வருடம் எமது பள்ளிகளுக்கு இமாமாக இருக்க விரும்புகின்றேன்" . அல்லாஹு அக்பர்...!
2) இரண்டாவதாக, எமது படைப்பாளனிடம் சிறந்த நிலையில்( நோன்பு நோற்றவராக), சிறந்த மாதத்தில் மீண்டுள்ளார். அல்லாஹ் அவரைப் பொருந்திக் கொள்வானாக..அல்லாஹு அக்பர்...!
3) மூன்றாவதாக, இந்த குர்ஆன் வரிகளை திட்டவட்டமாக ஓதுவதற்கு என்ன சாத்தியங்கள் இருந்தன:
"அல்லாஹ்வின் பாதையில் போரிட்டுக் கொல்லப்பட்டவர்களை மரித்தவர்கள் என்று நிச்சயமாக எண்ணாதீர்கள் - தம் ரப்பினிடத்தில் அவர்கள் உயிருடனேயே இருக்கிறார்கள் - (அவனால்) அவர்கள் உணவளிக்கப்படுகிறார்கள்." (3:169)
இது தற்செயலாக நடைபெற்றது அல்லவே. மாற்றமாக இந்த மனிதர் சந்த்ரப்பத்துக்கு ஏற்ற மிகப் பொருத்தமான குர்ஆன் வசனங்களையே ஒதுகின்றார்.
4) நான்காவது, அவரது குரல். ஒரே வரியில் கூறுவதென்றால் "பிரம்மாதம்". வேறு எப்படி என்னால் விபரிக்க முடியும்?
'தியானி', 'பிரதிபலி', 'செயற்படுத்து'. அல்லாஹ் தான் தன்னுடைய ரப்பு என்றும், ரிzஸ்க்கும், வெகுமதிகளும் அவன் பாலிருந்தே வருகின்றன என்பதனை அறிந்திருப்பதனை விட வேறு என்ன சந்தோஷம் ஒரு இறை நம்பிக்கையாளருக்கு இருக்க முடியும். நிச்சயமாக அவன் நம்பிக்கையாளர்களின் செயல்களை வீணாக்குவதில்லை. இந்த ஆயத்துகள், முஸ்லிம் உலகம் தற்போது இருக்கும் நிலைக்கு மிகவும் பொருத்தமாக இருக்கின்றன.
"யா அல்லாஹ்! இன்னாரை மன்னித்து அன்பைச் சொரிவாயாக, இவரை மன்னித்து கிருபை செய்வாயாக, அவரது மீட்சியை அருள்பாளிக்கப்பட்டதாக்குவாயாக. அவரது நுழைவை விசாலமாக்கி, நீர், பனி, மற்றும் பனிக்கட்டிகள் மூலமாக அவரை கழுவி விடுவாயாக, மேலும் கறை படிந்த வெண்ணிற ஆடையை தூயமையாக்குவது போல அன்னாரது பாவங்களிலிருந்தும் அன்னாரை அகற்றிவிடுவாயாக. அன்னாரது வதிவிடத்துக்கு பதிலாக சிறந்த வதிவிடத்தையும், அன்னாரது குடும்பத்துக்கு பதிலாக சிறந்த குடும்பம் ஒன்றையும், அன்னாரது துணைவிக்கு பதிலாக சிறந்த துணைவியையும் மாற்றீடாக வழங்குவாயாக. மேலான சுவர்க்கத்தில் அவரை அனுமதிப்பதோடு, கப்ரின் வேதனை மற்றும் நரக நெருப்பின் தீங்கிலிருந்தும் அவரை பாதுகாப்பாயாக"
எனது சமூகமே..! அநியாயக்காரர்களின் கரங்களில் சிக்குண்டு தவிக்கும் எமது உம்மத்தினருக்காக பிரார்த்திப்பதனை மறந்து விட வேண்டாம். அவர்களை உங்களில் ஒருவராக கருதி அவர்களுக்காக பிரார்த்தியுங்கள்! இன்ஷா அல்லாஹ்..!
சுப்ஹானல்லாஹ்..! அல்லாஹ் அவர்களை ஏற்றுக் கொள்வானாக, அல்லாஹ் அவர்களை ஜென்னதுல் பிர்தவ்சில் அவர்களை மீண்டும் இணைப்பானாக. அவர்களை பிரிந்து வாடும் அவர்களின் அன்புக்குரியவர்களுக்கு அல்லாஹ் பொறுமையை வழங்குவானாக. அடுத்தவருடைய மறுமை வாழ்வுக்காக உழைக்கும் மனிதர்களில் நின்றும் எம்மை வல்ல அல்லாஹ் திகழச் செய்வானாக. மேலான சுவனத்தில் எமது சகோதர சகோதரிகளை சந்திக்கும் மிகப்பெரிய பாக்கியத்தை எமக்கு வல்ல அல்லாஹ் தந்தருள்வானாக...!
மூலம்: http://goo.gl/Kyz5ut

Thursday, July 17, 2014

My first voluntary translation of ACJU's press statement on GAZA attacks

Upon request of the ACJU, I recently did a translation for them for a statement against Israel's aggression on Palestine. The article was originally in Tamil:

http://www.acju.lk/press-release/against-israel/

Tuesday, July 8, 2014

Dealing with C# constants

These days I'm more focused on polishing up my existing C# programming skills as well as attempting to learn more of the language with its new versions. I've begun to read a book titled "Effective C#: 50 Specific Ways to Improve Your C#" . I prefer to post the summary of each section of what I have learnt new from this book, which may be of useful to others too. Here is a summary of the usage of the const and readonly keywords:


  • const is a Compile-Time constant where as the readonly is a Run-Time constant.
  • Updating the value of a public constant should be viewed as an interface change.You must recompile all code that references that constant. 
  • Updating the value of a read-only constant is an implementation change; it is binary compatible with existing client code.
  • To further elaborate the above points further:
    • const must be used when the value must be available at compile time:
      • Attribute parameters and enum definitions, and those rare times when you mean to define a value that does not change from release to release. 
    • For everything else, prefer the increased flexibility of readonly constants.


Wednesday, March 19, 2014

Analyzing SQL Server Modules

There might be situations where you find mysterious behaviours of your SQL Server Stored Procedures or Functions probably while deploying a lengthy script with multiple creations or alterations of SPs or Functions. In such cases a DROP statement of one stored procedure could accidentally get included in the CREATE script of another one, possibly if you had forgotten the batch terminator GO. Recently at my workplace we were puzzled to see a stored procedure getting disappeared hours after deployment. After some hazzle, search on the internet, I posted this question on StackOverflow, I was able to get a good suggestion from this guy, to check on tracing the usage of the stored procedure by suggesting the following query on this post.

By querying the sys.sql_modules we'll be able to get the definitions of all stored procedures and functions.

SELECT o.type_desc AS ROUTINE_TYPE
        ,o.[name] AS ROUTINE_NAME
        ,m.definition AS ROUTINE_DEFINITION
FROM sys.sql_modules AS m
INNER JOIN sys.objects AS o
    ON m.object_id = o.object_id
WHERE m.definition LIKE '%search term here%'
The search term could be partial name of the stored procedure in question and the "Definition" field will give the complete script on the creation of that SP or Function.