Saturday, 4 March 2017

Mistakes that I made while setting up my Goals

Mistakes that I made while setting up my Goals



Summary:
1. Set up simple and easy to achieve goals, that are easy to track like "I will spend 15 mins reading good blogs every day/weekdays(mon-fri)/weekends(sat-sun) for 1/2/3 weeks".

2. Do not setup broad range goals right away unless you understand that it will take pretty long time to accomplish it.

3. Do not setup goals to impress others or self (unless you are really excited about it)

Details:
  • The Goals were very broad range. So, that made the goals very hard to achieve it. 
      My Insight: If you are at a bottom level of the skills you want to acquire, 
      you probably will have no idea or vague ideas about how to improve it. 
      You will have to rely on your current level of thinking and google searches to 
      figure out what is needed.
  • Some of the Goals were based on a final result or outcome. These outcomes were hard to achieve. (Yeah, I understand this is not a mistake for every kinds of Goals)
       My Insight: I did not understood that some of the goals could take a long time 
       to accomplish. So i got discouraged early seeing not much progress. 
       Some of the Goals should have been split in smaller goals, for some of them 
       the expected  outcome was out of my control, as it was depended on others.
  • Some of the Goals were setup to impress others or myself. These Goals did not spark any motivation within me, so i did not found any drive to accomplish it.
       My Insight: Do not trouble yourself by setting these kinds of Goals.
  • I did not setup simple and easy or extremely small Goals that would have been easy to do.
       My Experience: I will tell you later, once i actually do it... :)
Update: I actually tried it and it seems to work perfect for me. I have now extended the duration of the already achieved goals so as to stretch myself.


  • I did not change my goals once i hit a roadblock. I made up those goals so i could have easily changed it, dropped it and made it simpler but i did not assuming it as a taboo. I don't need to be scared of myself.

       My Experience: Persistence is the key to succeeding at your goals.


  1. Cool Quote: Accept that you have to do daily chores or mundane task and you should not try avoiding it. Your only choice is to either enjoy doing it or dread about it.

New Things to do

Try out the Git Hub Guide:
https://guides.github.com/activities/hello-world/

Please do practice locally:
Angular 2 in 60 mintues

Html PlayGround For Kids

Idea Background:
Allow kids to build Html Pages
Kids can UI elements
Kids can edit UI elements
Kids can add behavior to the UI elements
Kids can share it to the world with an URL
It should have drag and drop feature for them.
Kids can post these HTML pages on there websites.

Analysis:
Start with an local HTML app

Left side:
It should have UI elements. Start with Heading, Paragraph, Line Break, Button

Middle Top Side:
Button to Render HTML

Middle Side Rest:
It should have a default drag container

Right Side:
It should display the Html as rendered by  the browser

Angular Notes


Services
  • You can use services to organize and share code across your app.
  • You can also register services via the $provide service inside of a module's config function
This technique is often used in unit tests to mock out a service's dependencies. How? I don't know.

Scope

  • Nested scopes are either "child scopes" or "isolate scopes". A "child scope" (prototypically) inherits properties from its parent scope. An "isolate scope" does not.
  • The scope is the single source-of-truth for all things view related.
  • Each AngularJS application has exactly one root scope, but may have any number of child scopes.
  • The location where the root scope is attached to the DOM is defined by the location of ng-app directive. The other way around is true as well.
  • You can check the scope of any element using the dubugger, although it is only available when the setting $compileProvider.debugInfoEnabled() is true (which is the default). Also it should be OFF in production release.



Saturday, 22 October 2016

Technical Key Concepts - Good to Learn

WCF
OperationContext
MsgInspector
mexhttpbindings
how to implement transaction
instancing

SQL
CTE
covering indexes
Table hints

LINQ
Partial Methods

MVC
Viewbag(datatype req?)/ViewData
action filters/filters


General
ASP.Net latest framework, MVC, LINQ, OOPS, NUnit test case
Try and understand Structure Map, Rhino Mock, Dependency Injection


MVC
Adv. Of MVC
Routing
Validation
- Data Annotations, Custom Validations
Razor – MVC3
Filters
ActionResults Type
How to pass data in MVC between views-2-controller [expect situation question]
-    Model, ViewBag, Viewdata, TempData
Helper Functions/Custom Helper Functions
Master Pages
Autohrizations
Partial View
- Html.RenderAction, Html.RenderPartial, Html.Partial, Html.Action
Security in MVC


General
tcpbindings - intranet (secure or not)
diff in 3.5 and 4.0
throw ex; throw;
what to pass in httpheaders
compression technique/viewstate removal
page events
diff. in clustered/unclustered, covering index
sql2008 -> tbl params, replacement of cursor
all diff. in func & SP
delete-truncate with logging data
cascading-referential integrity
behaviuor settings - maxmsglimit
WCF service - username/pwd based
IActionFilter & IActionSelector
What is User Story-Agile
calling code metod from JS - asmx service
SSRS - fieldexpression, caching, dynamic datasource, types of report worked on


WCF
===================================
Instance Modes -> Session
Duplex
SOA Based WCF
Message Patterns


WPF
============
MVVM pattern 
Dependency Properties
INotifyPropertyChange
Routed Events
Observable Collections
Binding in  WPF
User Controls
Commands


Prism 
=================
Boot Strapper
Shell
Module Catelog
DI (unity/MEF)
Event Aggregator

Useful IT Blog Links

How to use Trello for Skill Management
http://buildingbettersoftware.blogspot.com/search?q=trello

Joe Eames pluralsight course content:
https://github.com/joeeames/AngularFundamentalFiles


Trello Info for Skill Matrix:
http://buildingbettersoftware.blogspot.com/search?q=trello

Javascript:
http://aaron.powell.com
http://twitter.com/slace


Technical Blogs:
WindowsCommunicationFoundation(WCF)Samples
Ido Flatow's Blog

10 Tips for Learning a New Technology



Thursday, 13 October 2016

Send Mail using Outlook and Javascript

I was developing an Internal application and need to send mail using local Outlook profile but something that allow HTML formatted contents. I ran into a easy Javascript option to do it as follows:

Prerequisite:
  • The Client User machine should have Outlook installed and should have an Outlook profile.
Note:
  • This will work only in IE (Internet Explorer) browser, So it is suitable only for Internal Application.
  • The Browser setting should allow ActiveX object creation or the User will be prompted to allow the access.
<html>
<script>
function SendMailVarBased(emailid, subject, htmlBody) {
            try {
                //get outlook and create new email
                var outlook = new ActiveXObject('Outlook.Application');
                var email = outlook.CreateItem(0);

                //add some recipients
                email.Recipients.Add(emailid).Type = 1; //1=To
                //email.Recipients.Add('user2@company.com').Type = 2; //2=CC

                //subject and attachments
                email.Subject = subject;
                //email.Attachments.Add('URL_TO_FILE', 1); //1=Add by value so outlook downloads the file from the url

                // display the email (this will make the signature load so it can be extracted)
                email.Display();

                //use a regular expression to extract the html before and after the signature
                var signatureExtractionExpression = new RegExp('/[^~]*(<BODY[^>]*>)([^~]*</BODY>)[^~]*/', 'i');
                signatureExtractionExpression.exec(email.HTMLBody);
                var beforeSignature = RegExp.$1;
                var signature = RegExp.$2;

                //set the html body of the email
                email.HTMLBody = beforeSignature + htmlBody + signature;

            } catch (ex) {
                alert(ex.message)
            }
        }

SendMailVarBased('rahul8346@gmail.com', 'hi there','<html><h1>Hi there</h1></html>');
    </script>
</html>

How to check a database connection connection works on the Database Server or thru any Remote Server?

How to check a database connection connection works on the Database Server or thru any Remote Server?

Or

How to check if any OLE DB provider is installed on the Database server or Remote Server or any machine?


The easiest way to find out what kind of database connection provider exists on any Database or thru any Remote server is as follows:

1. Create a new text file on the Database server
2. Rename the file "New Text Document.txt" as "Test.udl". (Just rename the text file extension as "*.udl")
3. Double click the file. It should open the Data Link properties. Specify the required information to test your connection works or not.






4. Also you can check the "Provider" tab and which list all of the OLE DB provider that is installed on the given Server like "OLE DB", "SQL Native", etc.


Reference Link: