Development

NPM: Make packages local to user

mkdir ~/.npm-global
npm config set prefix '~/.npm-global'

... add to profile:

NPM_PACKAGES="$HOME/.npm-global"
PATH="$NPM_PACKAGES/bin:$PATH"
export NPM_PACKAGES PATH


IntelliJ IDEA, Spark and Debugging

This has been tested on IntelliJ 2019.1!

Situation: you have a project X which sets up a Sparkserver. This one runs on port abcd. In this case, debugging will be set up on port 8086 on your local development machine:


Windows

Visual Studio: Red Squiggly Lines All Over

  1. Close Visual Studio 2017
  2. Delete the .suo file in .vs/{PROJECT_NAME}/v15

Tray Icon Program (win32)

  1. Create a Windows Forms Application
  2. Add a ContextMenuStrip
  3. Add some entries to the context menu strip, double click on them to get the handlers e.g. exit (double click) → handler → Close()
  4. Add a NotifyIcon, in the designer set contextMenuStrip to the one you just created, set an icon
  5. Set properties for the form in the designer:
    FormBorderStyle: none
    	Opacity: 0
    	ShowIcon: false
    	ShowInTaskbar: false
    	WindowState: Minimized
    
  6. Add Visible = false at the end of Form1_Load, this will hide the icon when using ctrl + tab

MS Icon Sizes

Tray Icon: 16x16, 20x20, 24x24

App Icon: 16x16, 24x24, 32x32, 48x48, 64x64, 96x96, 128x128, 192x192, 256x256

MS Unit Test

Add the MsTest.TestAdapter and MsTest.TestFramework nuget packages to your unittest solution.

Then you can annotate your method with DataTestMethod and use DataRow's to pass data to the method:

[TestClass]
public class NumbersTests
{
    [DataRow(0, 0)]
    [DataRow(1, 1)]
    [DataRow(2, 1)]
    [DataTestMethod]
    public void VerifyThatTwoSelectedNumbersAreEqual(int number1, int number2)
    {
        Assert.AreEqual(number1, number2);
    }
	}

Yep, fails in the 3rd test ...