Engage 2017 From A Distance

Watching Engage from a distance a few weeks ago was an exercise in misery, far more than even IBM Connect, Theo Heselmans had put on an extra special show and I was gutted to be missing it.

The conference looked like its exceptional mix of excellent content plus good socializing and in my personal opinion is the best of the ICS related conferences.

An extra wince for me this year is letting Theo down on the presentation of my session, thankfully Matt White stepped in and gave my session for me so a huge apology and much gratitude to him

 

Engage is always important to [LDC Via](http://ldcvia.com/) as is our anniversary time, this time everybody else had to pick up the slack ([Ben](https://twitter.com/benpoole) had to do the speed sponsoring I normally do) so I am in the team dog house.

I was sent freebies back from the various vendors, but freebie of the conference goes to [Teamstudio](https://twitter.com/teamstudio) with their [Tile](https://www.thetileapp.com/) which according to my wife will save me about 15 years of my life

That’s it just a Slide Deck Post and a groveling apology

 

P.S. Many thanks to [Amanda Bauman](https://www.linkedin.com/in/amandabauman) IBMs token sane person, for sending over some IBM swag (which I had completely failed to order) as well as the Champion Connect Tshirt

ChargeTech Plug

Kickstarter/Indiegogo projects seem to fail rather a lot, but I have long wanted a battery I could charge a monster laptop from and so I could not resist the ChargeTech as they promised a 250 Watt output, which would handle the 130-170 Watt power supplies that nearly all my laptops have. after the delays that are now run of the mill with the outsourced production that is common on Kickstarter projects, they did actually deliver, my wonderful monster battery came in a very smart box and inside the battery in all its glory but with a huge yellow label on it[1]This worried me for a second but it just turned out to be a REALLY pushy registration card….. so frankly it can get stuffed…

The Plug its self has the size and feel of an extremely bottom heavy hardback book, it has a quality feel about it.



The business end of the Plug, I have used a lot of these universal sockets, they often feel fragile and like they are going the break if I push the plug in hard, these, however, feel just perfect. the blue LEDs on the USB are a tad on the bright side, there is also a usb-c and a barrel charge port on the left-hand side.

The accessories you get are basic but expected, I also got a car charger (not shown), I will talk about the charger later, the bag is perfectly satisfactory if a bit tight but in a nice touch it has a hole on the side so you can charge the Plug while it is still in the Bag

Usage

Using the Plug is logical and simple, turn it on at the front and get shown a little LED % readout, and then there is a separate switch to turn on the AC power, the % indicator remains on during use, I plugged in my laptop and then every USB port, and it just took it like a champ, happily worked on it for a few hours till the % readout read 00 and then it turned off,I unplugged my stuff and then plugged in the included charger, the % counter then slowly counted back up till it read 99 then FF (for full)…… don’t know what I expected but it behaved perfectly.

Notes

  • Not for Planes : Now this thing is not to be taken on a plane either in hand luggage on checked in, it’s well over the limit (which I think is 27,000Mah), but that is OK, there are plenty of battery packs that handle that area of the market (ChargeTech themselves makes one, and I have the omnicharge from another Kickstarter coming soon anyway <looks guilty>

Niggles

Even though the Plug is a product from an existing company and not just a Kickstarter newbie it does have a couple of bits that are not perfect

  • Charger The charger that comes with the the Plug is a basic off the shelf job and it shows, particularly in contrast to the build quality of the Plug its self, it’s a 43W charger in the case of 75W/90W charger and this is a special crime in a product that is designed to be portable, however all is not lost, the plug uses the most common barrel power connector and I suspected it uses the same charge circuit as their other AC power products which will accept an input voltage of between 19.5v and 24v according to their manuals, this was supported by the fact that the AC charger provided is 24v but the car charger is 20v, a brief dig around in the old cables box unearthed an old 40Watt Lenovo charger that worked perfectly was better build quality and was a fraction of the size, for shame ChargeTech, for shame!!

  • Charge Levels The charge % on the front has a couple of numbers it seems a bit fond of, mine, in particular, seems very fond of 9% and 64% I don’t know why, but the first couple of times using it I actually thought it was broken.
  • Power Low After a week in my bag, I took the Plug out and checked the % …. it was at 70%, WTF!!! … after a minor panic, I realised that because the on/off button is a raised one on the front, it was simply getting turned on in my backpack, so I will have to get a couple of small rubber glue on feet to stick either side of the button to prevent this, perhaps make this button recessed in a future release.

Conclusion

I like the Plug, it’s a slightly strange beast, it has the feeling of something that was designed and build by Techs, then finished off by accountants, the 250 Watt outage is done perfectly and will make a real difference to my remote working, though I wish you could do a trickle charge off USB-C or some other method.

The sheer size of the 54,000mah battery was a joy, taking a few hours of my Lenovo P50 running flat out plus all the USB ports in use to kill it, it fills a gap in the battery market that has been open for a long time and I am glad I now have one.

References

References
1 This worried me for a second but it just turned out to be a REALLY pushy registration card….. so frankly it can get stuffed…

Basic Authentication logout Issues

A quite interesting bit of work I am doing at the moment is building an AngularJS app running on an IBM ISeries, this has presented a whole series of odd little challenges but the one that bit us hard by corporate standards was logout and session expiring, The system and its sessions are on an Apache box sitting on an ISeries, it has turned out that not only was the Apache logout URL not present but that the Apache session expiry did not take effect[1] but even if it had, it would have screwed up the Internal application that most people use to have an Iseries Session via a browser..

So what to do….

I have done a nasty little JavaScript solution but one I think fits the circumstances.

  1. As this is for an AngularJs app, no jquery or such
  2. I did not want this solution to actually be built into the angularjs app, as in a perfect world the underling issues will be fixed and I want it easily ripped out, also I don’t want the code mentioned in each controller etc etc.
  3. The server that the app is running on has no facility to handle log off and does not have session based authentication (or even a login page)

Basic authentication does not really handle log off very well. For everything but Internet explorer you basically have to perform a fake login.

function detectIE() {
    var ua = window.navigator.userAgent;
    console.log('In detectIE');
    var msie = ua.indexOf('MSIE ');
    if (msie > 0) {
        console.log('IE 10 or older');
        // IE 10 or older => return version number, but I just want true
        //return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
        return true;
    }
    var trident = ua.indexOf('Trident/');
    if (trident > 0) {
        console.log('IE 11');
        // IE 11 => return version number, but I just want true
        var rv = ua.indexOf('rv:');
        //return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
        return true;
    }
    var edge = ua.indexOf('Edge/');
    if (edge > 0) {
        console.log('Edge (IE 12+)');
        // Edge (IE 12+) => return version number, but I just want true
        //return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);
        return true;
    }
    // other browser
    return false;
}
function ClearAuthentication(LogOffPage)
{
    if (!LogOffPage) {
        LogOffPage = location.pathname;
    }
    if (detectIE() == true)
    {
        console.log('In IE');
        // Logoff Internet Explorer
        document.execCommand("ClearAuthenticationCache");
        window.location = LogOffPage;
    }
    else
    {
        console.log('Not IE');
        var xhr = new XMLHttpRequest();
        xhr.open('GET', location.pathname);
        xhr.setRequestHeader('Authorization','Basic XXXXXXXXXXXXXXXX');
        xhr.onload = function() {
            if (xhr.status === 200) {
                console.log('did not log you off');
            }
            else {
                console.log('should be logged out')
                window.location = LogOffPage;
            }
        };
        xhr.send();
    }
}

Followed by a very iffy 30 min log off timer, that surprising works rather well

var inactivityTime = function () {
    var t;
    window.onload = resetTimer;
    // DOM Events
    document.onmousemove = resetTimer;
    document.onkeypress = resetTimer;
    function logout() {
        ClearAuthentication();
    }
    function resetTimer() {
        clearTimeout(t);
        t = setTimeout(logout, 1800000)
        // 30 min till logout
    }
};
(function() {
    inactivityTime();
})();

 

References

References
1 but even if it had, it would have screwed up the Internal application that most people use to have an Iseries Session via a browser.

New Laptop 2017

So it was time to get a new laptop…

My current one had given sterling service for the last two and a bit years, but there are a couple of broken bits on it, it was starting to make distressing overheating beeping noises and hard drives would often cut out, meaning I had to get a replacement before it gave out completely (and also before its warranty expired as I want it fixed to be my backup machine)

Time to start the hunt, but what are my requirements:

  • At Least 3 storage bay slots: I don’t need optical, but I do need:
    • An OS and home drive.
    • Dedicated drive for client VM’s.
    • Slow big drive for downloads and general none secure storage.
  • Loads of RAM, in this case looking at 64Gig for running multiple VM’s at the same time.
  • 15-inch screen (just the size I am used it)
  • A none cra**y power supply connector[1]This was the main reason that I did not get another laptop from https://www.pcspecialist.co.uk/ all their new laptops have these rubbish 4 pin power connectors which I have had problems with in the … Continue reading: it needs to be simple and hardy (like a standard barrel plug) or able to cope with being yanked out (like an apple plug)
  • As plain as possible: I think that all electronics should be a plain matte black but I am aware that I’m in the minority in this

So basically a portable server, I have a separate VM for every client I work with (that includes clients of clients when I am subcontracting), I find that it just makes things cleaner, not only does it mean I can adhere to the desktop standards of each client but there is zero chance of leakage of any client details to another client and lastly, sometimes there is a long period between work for a given client and this way I can just archive a VM till its needed again.

Contenders were:

  • One of the high-end machines from https://www.pcspecialist.co.uk/ they are cheap for their specs and I have had their machines twice before, but I don’t like any of the new models and when the current one had an issue they were very unresponsive when it came to getting it fixed under warranty.
  • The latest high-end Lenovo workstation, 2 laptops ago I got a W510 and the darn thing is still going strong, sometimes I don’t get them if their current spec is not very up to date.
  • Apple Macbook there is no denying the quality of these, and they are used by people whose opinions I put a lot of faith in, but but I just can’t, they don’t run Linux very well, they are very much “we do things awesomely so you must do as we want” and they fecking solder their HDD’s in for goodness sake.
  • Razer Blade Pro a newcomer and the nicest looking machine I think I have ever seen, but just too much money for something that I won’t be using for gaming.

After asking around, the decision was obvious, the P50 series from Lenovo was the only one that matched all the requirements this time round.

I ordered the machine plus various components for it and all had arrived in roughly a week, this time I had splashed out on a docking station as I always buy 2 power supplies anyway and I had drooled over them for years.

Up and Going

I still use Mint Linux (currently version 18.1) as my host OS, and it installed straight away, all standard hardware was detected and function keys worked so that was a nice none event, boot time was 6 seconds cold to login which was a bit jaw-dropping, the docking station worked perfectly with Linux, in fact, nothing went wrong and it was all in all a 10-20 min job, a quick copy over of my existing data and I was done.

Even though the keyboard was one of the new island types, the spacing is the same as the old Thinkpads, so my fingers settled in nicely, an added benefit that I was not expecting is the size and weight reduction, the laptop its self is both lighter and smaller than my current one as is the power brick, nice!

Two changes I did have to make were in the BIOS, Vmware had a little grumble at my 64bit VMs meaning that I had to go into the BIOS and enable “Intel VT-x” as show below


Also when when I was testing using multiple monitors I got a load of terrible screen tearing, even after installing the Nvidia drivers, Linux is know for being a bit poop when it comes to video drivers but in the end it turned out to be the integrated Intel Video, as the dedicated video card is only a 4Gig one, I just turned it on in the BIOS and will live the with slight battery hit (however the quality is so much better that I don’t think I would go back to the Intel one anyway)

Storage

Storage seems to be the issue I always have to do the most faffing around with as no laptop producer seems to have the options I want in their customization

In this case my budget would strech to 2 x 1TB M.2. SSD and 1 x 2TB Sata Spindle Drive (basically M.2. replaces mSATA which replaced the old IDE connectors)

Now I did not know that M.2. is just a name for a socket, its not actually a name for the new transport mechanism, it can support mSATA and NVMe, OK, what is the difference, turns out a huge amount, there are hundred of articles and videos on the difference but basically mSATA (the mobile form of SATA) was designed for spindle disks and so is designed around their speed limitation whereas NVMe behaves far more like RAM and so can access SSD’s very very fast

How the feck is this a TB Drive!!!!

fully populated and running like a dream. 🙂

Niggles

Nothing is perfect, but in this case, I am happy to report that the minor faults I have found are nothing to do with the engineering of the Laptop and everything to do with me being a minor idiot and a little bit of disconnect on Lenovo’s side.

  • Backlit keyboard: Early morning I sit down at the laptop and squint at the keyboard, why is the keyboard not backlit?, <tut>, I have just not turned it on, <moment of squinting at the keyboard> where the feck is the backlight?, quick visit to google, then a shamed visit to the Lenovo order page, a backlit keyboard is an OPTIONAL EXTRA, and like a numpty I had only glanced at the keyboard option to make sure that it was set to the UK, I did not notice that there was a none backlight option, it can be fixed by buying a a replacement keyboard, but seems odd to have an £20 option that has been standard on high end laptops for years set to off.. oh well RTFS
  • Installing SSd’s: as mentioned above I installed my own SSD, but you can’t just install the M.2. stick of gum, you need a plastic adaptor which is not supplied either with the laptop or with the SSD, these are not hard to find and the ones for the P50 look like this

  • Well that is NEARLY true, the adaptor above LOOKS like it is for all SSD (it even has the icons for both types) but if you are installing an NVMe, then you need one with the insulation pad at the back (see below), yes this info is in the detailed technical manual but part sellers do not make it obvious.

Conclusion

Very very happy, I feel I have picked the right laptop for the next couple of years, it has the same tank like build that is the hallmark of Thinkpads, and with features like USB-C and NVMe I don’t think I will find it wanting during its life span, it is also claimed that it has a full day battery which is something I have not had in a laptop EVER but anything more than a couple hours will really make my year.

Now if I can just stop it getting greasy and dirty, and get some good stickers for the lid.

References

References
1 This was the main reason that I did not get another laptop from https://www.pcspecialist.co.uk/ all their new laptops have these rubbish 4 pin power connectors which I have had problems with in the past, I phoned up and asked but the guy said that they were stuck with them for the next round of laptops.