NickLitten's blog

Telly: English TV still smacks American tellys bum

  • Posted on: 20 February 2014
  • By: NickLitten

So, I emigrated over here to the New World (as my redcoat forebears used to call it) five years ago. During this time I've been lucky enough to travel all over America, driven coast to coast twice, lived in various States and met many wonderful people. The weather is fantastic and life is good... I wouldn't consider moving back to Blighty. Nope. Life over here is better but, I do miss British Telly. :(

American TV just doesn't have the... oh I don't know what to call it... the 'je ne sais quoi'

I enjoy watching Sci-fi, sit-coms and any other gripping drama that makes me say "just one more episode before bedtime"

So, in a mission to record what's good out there I've decided to blog about series as I watch them, and as I find them. For other ex-colonials, I will include magnet links to the Torrents.

Nuff said.

For an ever growing list of decent/funny/gripping/weird TV series (or seasons as my colonial friends call them) just click here




Autodesk Inventor problem with Win10 - Student edition needs Win7

  • Posted on: 13 September 2015
  • By: NickLitten
hotle room, win10 x1 carbon, win7 lenovo Yoga and a mental dog

Eldest son has started a new high school class - Engineering. I'm excited for him because Engineering Science was one of the classes that I really enjoyed. Back in the day, we used slide rules, sketched on huge sheets of paper with hard pencils, used sin/cos/tan to calculate angles and load bearing values. Things were different back then but the basic principles were the same! Computers were something that I only ever saw on my weekly dose of Star Trek, Space 1999 or Blakes7.

Nowadays, the students will be learning how to use Autocad 2014 on their laptops. Tapping away and creating perfect technical drawings in the space of a few minutes.

*sigh*   Kids nowadays - /insert rant about how hard it was working down the mines when I was a kid  :)

But I digress...

So, Nate inherited my two year old IBM Lenovo Thinkpad Yoga 13s. It's a solid laptop, touchscreen and perfect for him to carry to from school and to play with Autocad on. Or so we thought.

JR Mobile Mechanic in Charleston SC - highly recommended!

  • Posted on: 5 September 2015
  • By: NickLitten
cheap mechanic in mount pleasant daniel island sc

Jerry is a friendly chap, accomplished mechanic with great prices and swift work!


It's not often I endorse a local business but JR Mobile Mechanic in Charleston is awesome! Jerry is a thoroughly decent chap, punctual, professional, did the job with minimal fuss and cleaned everything up afterwards. Great job Jerry -- you have a new repeat customer.

If you are in Charleston SC and need a solid reliable mechanic then call Jerry on (843) 345-5258



After recently relocating to Charleston, South Carolina, my stepsons Jeep Wrangler having the front brakes catch on fire -- well, maybe not a fire but a serious smokescreen for sure! He was driving along in front of me and suddenly the front drivers side started smoking heavily and I could see the Jeep juddering from side to side as he tried to slow it down. So, we swapped cars and I limp it home and get on Craigslist to find a cheap, local mobile mechanic who can come to our house and have a look at the thing...

First Experience

Speeding up SQLRPGLE using static indexes

  • Posted on: 31 August 2015
  • By: NickLitten
never enough time to program in RPG

SQL is a wonderful beast for quickly getting data from huge tables (aka Files). The trouble with SQL is that it's so very simple to use; programmers get lazy and sometimes forget to do the analysis to make it as simple and #FAST as possible!

It's easy to overlook performance tuning because SQL goes out there and uses any existing access paths for the data it wants, and if it cant find one then it creates a temporary path to get that data. It's like magic. This is great but that split second of temporary path creation can add up when it's done over and over again.

How do we fine tune our SQLRPGLE programs?

We can use Index Advisor in System i Navigator to look for naughty indexes and take it's recommendations for action. But this needs IBM I Access to be installed. So, what if we don't have access to any tools to help us out?

I was at a client site this morning and they had a SQLRPGLE webservice running and complained about the run time. This is a fairly complex SQLRPGLE program that is getting a selection of data from a long list of tables and they were experiencing average response times between 5-9 seconds. But somtimes much much longer... anything over a couple of seconds is way to long in the webservice world.

Here is a SOAP/UI screen shot of a test run of the webservice. The time is shown in the bottom right corner - a whopping 23.956 seconds.

Turnover 2 - Checking out code, editing and compiling using the Programmers Work list

  • Posted on: 13 August 2015
  • By: NickLitten

Checking code out - this is booking the code or reserving it for *you* to work on.

This takes a copy of the high level (UAT, QA, TST or PROD) into your developer library and lets you work on it. You work and compile it in there using the Programmers Worklist (which is Turnover's version of PDM)

Turnover - Software Change Management Tutorial for IBM i, iSeries and AS400

  • Posted on: 13 August 2015
  • By: NickLitten
Turnover for iSeries V100 Main Menu creating projects and tasks

So, I've been working on a freelance gig for some time now and the client uses Turnover (by Unicom) to manage their software development on their development system - an IBM Power System running the IBM i operating system. The Project involved writing some web-services to provide a web based interface between an old #ERP system and a new PHP enhanced warehousing system. There is a small team of 4 programmers on the project but software change management is just as important with a small team as it is with a huge global one...

I was asked to create instructions for team members to easily use the basic process for:

Part 1 - Using Turnover Projects and Tasks

Part 2 - Checking out code, editing and compiling using the Programmers Work list

Part 3 - Promoting code using Turnover Forms

System21 - Phone numbers for any customers on sales orders

  • Posted on: 11 August 2015
  • By: NickLitten
SQL Inner Join on AS400

During a meeting this morning, I was asked to provide a list of all Customer phone numbers for any System21 Customers that have ever been used on a Sales Order.

Perhaps this sounds like a complicated request but... have no fear SQL is here!!! In reality, its a very simple thing to find and takes just a few seconds using a SQL INNER JOIN.

How can we use SQL to find this data?

In this example, I'm working on a data cleanse to make sure that the phone numbers are properly formatted before sending them to FEDEX as part of the shipment information. We know that some of our data is badly formatted so lets quickly see how many are good, bad or ugly. Using SQL we can see all CUSTOMER entries from the Customer Master file (SLP05) which have been referenced on the Sales Order Header file (OEP40).

The SQL command goes like this:


SELECT cusn05, dseq05, cnam05, phon05 

FROM slp05                            

WHERE EXISTS                          

(SELECT *                             

FROM oep40                            

WHERE slp05.cusn05 = oep40.cusn40)


Webservices and RPGLE - Converting Character to Numeric

  • Posted on: 17 June 2015
  • By: NickLitten
Srdhar Maheswar likes to type

I'm in the final stages of a fun project writing web-services to interface INFOR System21 (on an IBM i aka AS400) with ACSIS Visitrack (on Windows Server), we are consuming (receiving) and serving (sending) all data in a standard alphameric layout But... as any RPG programmer will know... the conversion between alpha to numeric is easy to overlook and can quickly bite you in the arse.

This morning, I had a long discussion with one of the technical analysts talking about the differences in data layout between the "web" world and the "IBM i" world. Out there in website land data flows around in nice alphabetical chunks. I mean, my name is simply "Nick" and the number sixty seven is simply "67" and two and a half is simply "2.5". But in the database world character can be fixed length "Nick      " or varying length "Nick%" and numerics are commonly stored as packed decimal data so 67 could be stored in a field that is 15,5p so would look like "000000000000067000".  It sounds complicated but if we keep our code clean its a simple process to switch between these formats. Lord Sridhar Maheswar - I promised to write a blog about this to make it clear... here it is  :)