Monday, September 30, 2019

"strictNullChecks": true

In tsconfig.json this setting allows for the TypeScript compiler in an Angular application to sanity check assignments to interfaces such that nonnullable fields must have goods. "ASP.NET Core 2 and Angular 5" by Valerio De Sanctis mentions this on page 343.

detectChanges without the tick

In a Jasmine/Karma test of a component at an Angular 7 application you may want to do this:

tick();
fixture.detectChanges();

 
 

This comes into play when you want the component to do something asynchronously which you will fake out with some mocking so there won't really be much of a time delay but nonetheless it is all still happening asynchronously. So when would you just do this alone?

fixture.detectChanges();

 
 

The time for that is when you are still triggering an act that effects the DOM, perhaps by setting a flag that will unhide something in an *ngIf or such, and you need to react to the updated DOM.

You cannot just copy a report in Power BI.

Changing a link to the database to make a dev version of a prod report just screws up the report apparently. Supposedly there is some wacky workaround for this, but the paradigm does not by default lend itself towards making dev, test, and prod versions of the same report from one report so that there is not the one-off wackiness of changes in a particular report or some cumbersome process of making the same change three times in three reports. There just seems to be an assumption in this space that you'd only do reporting off of production data. My team lead has suggested that it is really hard to do analytics with the sparse datasets in dev and test typically, so on some level this makes sense.

Beware of checking to see if an enum is truthy in TypeScript.

The zero is going to be a legitimate value right? It represents the first thing in the enum, enum being short for enumeration or enumerated type and the count upwards being zero-based.

porcelain in git

As best as I can tell this gives you less verbose messages from any git command that would return a message. This suggests that porcelain is of the toilet which is of plumbing which can colloquially mean the deep mechanics of something in attempting to explain the name. If...

git status

 
 

...gives us:

On branch 33157-clean-up
Changes not staged for commit:
   (use "git add <file>..." to update what will be committed)
   (use "git checkout -- <file>..." to discard changes in working directory)
   
      
modified:  Trifecta.Core.Test/Trifecta.Core.Test.csproj
      modified:  Trifecta.Core/Trifecta.Core.csproj
      modified:  Trifecta.Infrastructure/Trifecta.Infrastructure.csproj
      modified:  Trifecta.RestApi/Trifecta.RestApi.csproj

   
no changes added to commit (use "git add" and/or "git commit -a

 
 

...then this...

git status --porcelain

 
 

...gives:

 M src/Trifecta/Trifecta.Core.Test/Trifecta.Core.Test.csproj
 M src/Trifecta/Trifecta.Core/Trifecta.Core.csproj
 M src/Trifecta/Trifecta.Infrastructure/Trifecta.Infrastructure.csproj
 M src/Trifecta/Trifecta.RestApi/Trifecta.RestApi.csproj

 
 

...in contrast! Also if...

git status

 
 

...gives us:

On branch 33157-clean-up
nothing to commit, working tree clean

 
 

...then...

git status --porcelain

 
 

...gives us absolutely nothing in the name of keeping things to the point!

An IDoc file might be a faster, better way to get data into SAP than an EDI file.

IDoc stands for intermediate document and its file format is SAP-specific.

Cisco ISE

The ISE in PowerShell ISE stands for Integrated Scripting Environment but the ISE in Cisco ISE is Identity Services Engine. Both are pronouced "ice" in spite of the differences. You know, I haven't had a drink since 2006 so one thing that is missing from this blog is any sort of beer recommendations, but when I did drink Smirnoff Ice I enjoyed. I guess I digress. Cisco ISE is a product that doles out who may access what in the sphere of access to a LAN. I learned of this last night in looking at LinkedIn. Someone was mentioning how he was attempting to pass a Cisco security exam and had to be versed in ISE.