Tuesday, 15 November 2016

When a famous singer becomes your Facebook friend...

Quite a few have begun to notice that I am an extremely humble person especially after I mentioned this wonderful trait of mine in this blog, a few posts back! It is not often I repeat myself but, somehow, this instance seems too good to indulge in fickle humility - fickle, because it rarely stays by my side, humility, that is.

A very famous singer (or maybe quite a famous one) sent me a friend request on Facebook and when the notification appeared on my mobile screen, I was skeptical - there were so many of these fake profiles, it could hardly be her, could it, I mused for a few seconds, before accepting the Friend request.

As soon as I could put my hands on my laptop, I quickly decided to login to Facebook and check her profile out. The tick mark that is usually associated with famous personalities was missing but looking at the friends list, the nationalities seemed to match - quite possible that she has just joined in with Facebook, which is quite strange, because she is of the current generation and although, Instagram could have been her patron's or her sponsors' choice, Facebook was not so bad, was it, that they gave it a miss for their star?

Putting aside all these thoughts, I decided to pen a few lines of poetry for her, hoping for either getting a Like from her (she had only 73 friends in her profile, so the possibility of her reading my poetry was quite high - that a Facebook status updated would not consist of poetry is hardly a thought of substance to much dwell on and I don't waste my time on dwelling) and I did come up with some really beautiful lines that I managed to collect while watching "Doctor Strange" (in 3D) as the scene where the mirror dimensions and the real time juxtapositioning happen between Dr Strange and the Ancient One.

What you see is how they are,
How you see is what they are,
Sometimes dark, sometimes blue and sometimes grey they are,
Shaded to protect what you are.
What they see from without is within Space
and without Time but with the same eyes
that sees Time and Space but without the skies

What they see from within is under the skies.

The inspiration was in 3-D and in sci-fi but the tragedy was in black & white that when I reached back and posted the lines and tried to find the name, it just would not appear in typeahead !!

She was gone! Not in my friend's list !! I felt like Steve Martin in The Dirty Rotten Scoundrels, when Michael Caine introduces the Princess and is rapped on the knuckles and made to squat on the toilet seat, and Martin goes, "NOT MOTHER?" Another way of saying it is like when the notorious female tries to swindle the two swindlers by dreaming about others' hard-earned money but finds herself in prison for having gone too far than her limited intelligence would allow her.

Thursday, 4 August 2016

Angular material - Cards tip

The fact is, that many times, we miss some obvious solutions that exist in the form of a simple attribute of an object and waste time using techniques that are no longer applicable because of the way technology and tools have emerged and those who do not recognize either end up with redundancies - in practices, techniques and attitudes.

So, when I read a question that was about managing a user login that was not returning to the login page after the user logs out or the session expires, I noticed the usage of a 'localStorage' object, which is the most common thing to do but if instead, the sessionStorage object were to be used, many knowledgeable would see that it solves some major problems straight away, without the usage of any special 'routers' (the software ones), it became clear to me that what the knowledgeable know is not through knowledge or more years of study but due to their experience.

AngularJS and Material (or for that matter, any technology that uses declarative forms of programming - declarative, in this context, does not mean annotations (as in Java) or attributes (as in C#), but as in programming through attribute (as in XML) values and directives (as in AngularJS)) are quite likely to put many of its programmer users in such situations.

One such instance that I wanted to share is inspired by another question on the same forum that was about deciding on AngularJS as a language to use in the project and what should be the criteria in making such decisions.

Rather than elaborating far too much on what could be bread and butter for many, suffice it to say, here goes !

Layouts, for the mobile, any-size-device, and the web, can be as simple as

<md-content layout-gt-sm="row" layout-gt-xs="row" layout-padding border="solid">

and the same layout fits for any device.

One of the most effective example of what should be the criteria for deciding on a language for a requirement (web or mobile app, though, only!)

Friday, 24 June 2016

White in Angular Material - tip

It is not a matter of black or white or any racial discrimination; it is quite simply a matter of the palette. Not that this indicates any taste or lack of it but because it is a colour, it must exist in some palette.

In Angular Material, the colour 'White' simply does not exist. It does, so to speak, but in the .backgroundTheme and to use it, you need to extend the grey palette (using the Google colour themes).

So, what do you do to colour your background 'white'? You simply create a new background theme and extend the palette whose hue you want to change or use! Like so,

var app = angular.module('modulename', ['ngMaterial', 'ngAnimate', 'ngMessages'])
    .config(function($mdThemingProvider) {
        var background = $mdThemingProvider.extendPalette('grey', {
            'A100': '#FAFAFA' // Not exactly white
        $mdThemingProvider.definePalette('background1', background);

The newly defined palette now can be used with any other palette like the primaryPalette.

But that is not all for, this, you can find in the issues list of the Material forum. Where it gets tricky is when you need to make AM recognize the colour, which Angular Material simply refuses to.

To make the new palette work for, say, md-toolbar, you need to wrap your md-toolbar in md-content for Angular Material to pick the colour from the theme.  

Friday, 25 March 2016

Nuttify to contextify and be nuttified

The all new circular references

I guess somebody out there got really miffed (which is not surprising because the government as defined by political parties is usually to 'represent' masses (to get votes) and if the masses are nutcases then the government will be representing nutcases - a kind of a circular reference or a Catch -22, for progressive minded sane people) with how the bureaucracy and the government works, who keep blaming each other or asking for newer things; much like how the traffic cops usually know how to ask for docs that you don’t have and at times for bribes, for which you do not have the money!

With JsDom, it is similar. JsDom requires a particular version of NodeJS. 

Cool, so you get the latest version or upgrade with npm, right? Wrong. Because NodeJS simply refuses to respond until you nativize your Contextify.

But, why do you want to Contextify, in the first place? You don’t but you have to because you want to use JsDom.

But why do you want JsDom? Because you want to jQuerify.

But why do you want to jQuerify in NodeJS if you can simply use jQuery?

Because you want to jQuerify and Ajaxify the scripts in your HTML DOM so that you could trick the user into believing that you are using a server while using a browser but which in turn is false because it turns out that it is not a trick because even a browser is not used.

And to do all these Trickifys, you need your native IDEs like Visual Studio or xCode because you cannot compile native modules as they are machine specific!

Much like how nutcases who believe that you cannot survive by doing everything on your own without their help (imagine Nuttifys to make believe the nutcases to believe that they are not nutcases and you get the picture!).

Or, in much clearer terms, it is how some nutcases want to 'liaise' with you to fix a marriage or even a job interview for another while being already married. So why should the nutcases do so? Because...dash it, that is why they are nutcases, I can't possibly answer every question in this world, can I? Do some homework on your own.

Friday, 12 February 2016

VS2015, NUGet and NUnit Test Adapter bug

Is it a VS 2015 bug or a NuGet one - there are so many weird bugs whenever NuGet is used to install packages!

One such bug can be replicated by following the below bullet-ed steps:

  1. Install NUnitTestAdapter with NUGet (not the one with the WithFramework) in your NUnit test project. Set the test project's target framework version to "4.5"
  2. Check the Test Explorer and the target framework Settings of the project to ensure both synchronize.
  3. Add another project (say, for example, a class library to be tested from your NUnit test project). Set your project's target framework version to "4.5.2"
  4. Add reference to NUnit v2.6.4 (not v3.0 and not through NUGet) after downloading it from NUnit dot org and add some tests in your test project. 
  5. Build solution. You should see some warnings as below.

Open the Test Explorer window. from Test->Windows->Test Explorer and click Run all... No tests will appear in the Test Explorer because the tests cannot be discovered due to Build errors!!

Warnings are errors? Rhetorical question, of course.

Change the other project to target the same framework version as your test project's and rebuild.

Now check out the Test Explorer.