ITx Rutherford 2019

The 2019 ITx Rutherford Conference in Nelson, New Zealand, was jointly organised by IT Professionals NZ (ITP) and The Computing and Information Technology Research and Education New Zealand (CITRENZ).

Last week, I was able to attend the 2019 ITx Rutherford Conference in Nelson, New Zealand. The conference was jointly organised by IT Professionals NZ (ITP) and The Computing and Information Technology Research and Education New Zealand (CITRENZ).

I really enjoyed the conference, as it was both an opportunity to create new industry contacts, to be exposed to new ideas and concepts, and also to attend several talks from experienced and knowledgable guest speakers.

Whilst I could be here all day, detailing all of the talks attended and concepts discovered, I’ll highlight what I found to be the most interesting top two; AI and Healthcare.

Artificial Intelligence

Talk of or about, and even relating to artificial intelligence was commonplace during ITx. This transformative group of technologies, whilst no newcomer to the tech scene, has certainly been experiencing a resurgence in recent years, achieving some major advancements.

The first interesting point was about The Nelson Artificial Intelligence Institute (NAII), which is set to become one of the leading authorities on AI within New Zealand. The institute has been in development for some time and I believe it is expecting to launch fully in early 2020. They’re backed by both corporate interests and the New Zealand government, after receiving a $3.4 million dollar loan from the government’s Provincial Growth Fund.

NAII has already been working with the Nelson Marlborough Institute of Technology (NMIT) to develop two AI courses; Introduction to AI for Society and Business, and a second as yet unnamed course. They’ve also been working with a few local businesses, including the Cawthron Institute to develop an algae counting and identification system that uses computer vision and deep learning, and another potential, self-imposed project intended to use a combination of hydrophones and AI to try an understand why whales beach themselves.

The other interesting focus on AI was a broader one; looking at AI in a wide context, in how quickly AI technologies are becoming available to the public, with companies like Microsoft, Amazon, Google and IBM all providing cloud-based AI as a Service (AIaaS) services, which make numerous AIs available – including computer vision services, language processing and recognition services, and machine learning services, just to name a few.

With increased availability and access to AI, we’re also seeing increases in the number of uses of AI, but also a growing number of industries that are applying AI technologies. From agricultural applications aimed at improving crop growth, plant health and farming efficiency, to conservation efforts in protecting ecosystems and wildlife, to enabling those living with disability and enhancing telecommunications – AI is spreading far and wide. One speaker described it as “the defining technology of our time,” a sentiment that I feel holds true – and the crazy thing is that this is just the beginning. AI is still growing and will (hopefully) continue to do so, leading to applications we cannot even imagine just yet.

Medical Technology

Another topic that was featured at the conference was around medical technology, in a talk that highlighted both the technological failings and shortcoming of medical practices currently, and the technological solutions and advancements that are on the way.

The speaker, Gordon Munro, talked from experience, as his wife is a General Practitioner (GP) and through their joint backgrounds, they’ve seen these shortfalls personally. Many practices operate using software born in the early 1990s’, which while still capable software, lacks many of the modern features and capabilities that newer technologies provide, and many of the software solutions in use can’t integrate with other solutions, creating disjointed environments and creating extra work for staff. They’re also responsible for keeping the fax industry alive!

Whilst there are hopefully newer software solutions on the way, a range of other technologies are making their way into medical practices, including point of care blood testing, capable of providing blood test results in a matter of minutes, automated blood glucose level monitoring and insulin administration for diabetics and more readily available genetic testing, which is supporting pharmacogenetic practices, such as tailored drugs designed to work most efficiently with an individuals unique genetic makeup.

ITx 2020 – Wellington… maybe?

Whilst those were just two topics of interest to me, ITx Rutherford was packed to the brim with so many interesting talks, I only wish the conference had started with a tutorial on how to clone yourself so that I could’ve attended more of the talks! But alas, it started with no such guide.

That being said, I’m looking forward to the 2020 ITx conference, which is still to be confirmed, but looks like it may well be in Wellington. If circumstances allow for it, I’d definitely like to attend that conference, and for any working in the IT industry, or studying for the IT industry, I’d highly recommend attending as well.

If you’re interested in learning more about ITx or The Nelson Artificial Intelligence Institute, check out the source links below.


Real programmers count from 0… right Microsoft?

What number does an array’s index start from?

3 years of study taught me that an array’s index starts with 0 – indeed I imagine that if you asked this question of a lot of programmers, they’d also tell you the same thing. The languages that I encountered during my studies all use 0 based arrays – VB, Javascript, PHP, and C#.

However, in the vast realm that is software development, it turns out there are 1 based arrays. I know, I know, I can hear some of you muttering under your breath, saying “I knew that,”.

Well, it was quite the revelation when I came across 1 based arrays. A little bit of research shows that 1 based arrays do exist, in a handful of languages, although 0 based arrays are more common, as shown here.

Now don’t get me wrong, if it’s the convention of the language, there is nothing wrong with a 1 based array. Where it becomes wrong is when you find 1 based arrays in a language whose convention is 0 based arrays.

I encountered this anomaly when I was programming a word plugin, which is done with C#, which, wait for it… uses 0 based arrays. So much to my frustration and surprise, attempting to access the first item via position 0 was met with a critical error. An hour later and with the help of my boss, we stumbled upon the solution – targeting position 1. The function worked flawlessly. Naturally, the next question that sprung to mind was what dark magic is this?

It turns out that Microsoft Office applications use 1 based arrays, going against the convention of the languages that MS Office applications are programmed in – namely VB and C#. Now, despite this *ahem* violation on Microsoft’s part, I could live with this if a) it was made clearer that this is the convention that Office applications use and b) if this was actually the convention for Office applications.

Yeah… it gets worse, for straight from the horse’s mouth:

“Most collections used in Office applications (except Access) are one-based, that is, the index number of the first item in the collection is 1. However, the collections in Access and some components, such as ADO and DAO, are zero-based, which is, the index number of the first item is 0.”

The key gem to take away here is that even the convention-breaking convention doesn’t stick to convention, and at this point, one needs to ask the real questions.

Tell me Microsoft... what even is convention?

I’m not the only developer to encounter this strange phenomenon like Jacob Binstein did in his blog article here. What I hope that posts like this, or Jacobs achieve, is that they will show up in a google search and spare you some bewilderment, however small, as you try to decipher why your non-Access Office plugin fails to grab array item 0. I think that Jacob summed it up quite nicely when he said:

“If you’re using C#, arrays start at 0. Unless you’re using C# with an Office application, because then it starts at 1. Unless that Office application is Access, a Data Access Object (DAO), or an ActiveX Data Object (ADO), because then it’s back to 0.”