In this spotlight interview we dig into the background of 2016 ADUG Symposium keynote speaker Malcolm Groves.

malcolm_groves

Malcolm Groves is a hard core programmer and technology enthusiast with a passion for development and architectural improvements.  He is is well known in the Australian Delphi community for his years representing Delphi and other products as Senior Director of Technologies and Senior Director of Sales and Marketing  for Asia Pacific and North Asia regions.

ADUG 2016 SYMPOSIUM
* Thursday 4th August 2016 Sydney
*  Friday 5th August 2016 Melbourne
You dont need to be a member to attend, but you will get a discount next year if you join and register as a member
International attendees are welcome.
More Info


As an organizer of the Perth meetings, I can tell you that it is always the same when Malcolm is presenting.  The meeting will be full, we will have to squeeze in every spare seat that we can find and we will be ordering A LOT of extra pizza.
– Scott Hollows, Editor


What city do you live in.  Where do you travel for Delphi related work ?
I live in Sydney, however I have spent the last decade or more visiting customers (many of them Delphi users) around Asia.

 

What does your business Code-Partners do ?

We help companies doing software development. This could be anything from providing them tools, training them to use those tools more effectively, helping them optimise their development process through to helping them with the actual development work.

How are you involved now in the Delphi community

With customers spread across multiple countries, my involvement with the community has become increasingly virtual over the years. Blogging, videos, webinars, Facebook groups, etc. Even a lot of our training is delivered live over the web these days.  There is still a lot to like about face to face meetings, but if you want to interact with a broad range of people, there is no other effective way.

 

I know that you have some interesting hobbies and sports – tell us about those

Hmmm, you said interesting? That might be tricky. Let’s see, I’ve played guitar since I was 16, although my days of playing in bands are long behind me, I still play every week and am teaching my kids (8 and 6) to play. We make an awful noise but it’s a lot of fun. I’ve also practiced martial arts for a similar length of time, most recently Hapkido.

How did you get started in computers ?

When I was 12, my neighbour who was a couple of years older had an Apple II clone. We started out playing things like Wizardry, but pretty soon we decided we wanted to write our own game and that started me down the programming path. A year or two later I convinced my parents to get the family a Dick Smith VZ200 for Christmas, complete with plastic chiclet keys, tape drive and the very expensive 16kb RAM expansion. Not sure how my sisters felt about this as their Christmas present as well, but I think I’m the only one who ended up using it.

Weirdly I never thought about it as a potential career. When I finished school I was going to be an Architect. I needed to put in a 2nd choice on my Uni application, and just wrote down Computer Science, figuring it didn’t matter as I was definitely getting into Architecture. Well, I didn’t get in, and accepted my second choice of Computer Science at QUT in Brisbane almost grudgingly. On my first day I was so grateful I had missed out on Architecture, as I realised I had through sheer luck landed exactly where I should be. I’ve pretty much felt that way ever since.

When did Delphi and Pascal come into the picture for you ?

I’ve been in and out of Pascal a lot over the years. That first Apple II game my neighbour and I started to write was in Pascal. When I finally got to Uni, our first semester programming subject was in Turbo Pascal, before we moved on to Assembly and C. Even then, we kept coming back to Modula II (a close cousin of Pascal) as the QUT campus I attended was behind Gardens Point Modula, with a lot of the honours students working on the compiler.

You have been developing software for a long time.
Can you tell us about some of your early successes with Delphi ?

I remember one of my first jobs after finishing Uni and moving to Sydney was to build a sortation system for one of the largest freight companies in Australia. When boxes were loaded out of trucks onto the conveyer belt at the depot, it was my code that had to read the barcodes, look up the DB to see where they were going, figure out which of the chutes they needed to go down to get on the correct truck, and then interface with the system that controlled the belts to send it there. We started it in C++, but 3 months in my boss walked in and dumped a stack of floppy disks on my desk and said “Let me know what you think of this”. It was the beta of Delphi 1, and over the next week I started playing and then decided to rewrite what we’d done in C++ over the last 3 months in Delphi. 2 weeks later we were caught up and we went on to build the rest of the system in Delphi. Debugging/testing was interesting as we could only use the conveyer belts after hours, so we’d be there in the middle of the night loading new software on, madly chucking empty boxes onto the belt to send them around, then making changes and recompiling with my desktop and monitor perched up on a stack of pallets in the middle of the depot floor. Having a depot full of truck drivers annoyed at you when your code sent the wrong boxes to their trucks was a good way to teach me the value of testing thoroughly 🙂

Are you working on any Delphi programs now or recently ?

A lot of our focus on the Delphi side is on extending existing Delphi apps into new areas, such as cloud, web and mobile. I’ve seen so many spectacular failures over the years when people decide they need to do a total rewrite of some working system. That working system has had such a huge investment in tailoring to exactly match a businesses requirements, throwing it away and starting again is almost always a terrible business decision. I’ve seen this again and again, where the replacement takes twice as long as planned and when it is released the end users rebel because it only has half the features.  As an example, I’m currently working on migrating an existing client server Delphi app to a cloud-based system using REST. The existing front-end needs to continue to work much the same way (although using REST instead) but then also add mobile and web front-ends. Originally the business thought they need to throw it out and start again, but we’ve been able to do a staged process, using a very large percentage of the existing code exposed as REST API’s, to minimise the disruption to the business.
Your job has taken you all over the world.  What memories stand out from your travels ?

Yes, I’ve been fortunate enough to travel the globe spouting off my opinions about software development, from telling Americans how to avoid introducing bugs, the Dutch how to do Unit Testing, explaining MVVM to a room full of Japanese developers, and telling a thousand Chinese developers that chasing Best Practices was a recipe for mediocrity. I once worked with the Chinese equivalent of the ATO  (Thats the Australian Tax Officer for our overseas readers – Editor) . They were doing a major new development, and had purchased a hotel in Beijing where all the developers both lived and worked.  The theory was this would make them even more productive, as they wouldn’t have to waste all that time travelling from home to the office.  It wasn’t quite Lord of the Flies by the end, but it wasn’t far off.

I could keep you here all day with Delphi / Borland / Codegear / Embarcadero topics so on to other topics.
What have you have done outside of I.T.   Come to think of it – have you always been in IT ?

I did lots of different jobs to pay the rent while I was at Uni, from playing in bands, driving taxi’s, DJ’ing at some rather dubious clubs in Brisbane’s Fortitude Valley, to working night-shift at a computer centre for one of the major banks. However, the job I remember most was while I was still in high-school. My father is a retired builder, and I used to go to work with him during the school holidays in the summer Queensland heat. Just before the start of year 11, he worked me like a dog for weeks, out in the sun all day as a labourer building these houses. At the end of it he asked me if I wanted to become a builder. With all the sensitivity and tact of a 15 year old boy, I said “Hell no, there has to be an easier way to make a living than this!”. With a smile he said “Good, then work your arse off at school for the next two years or you’ll be back here with me”. Whenever I have a bad day, or a tough project, I think about that summer and realise I’m incredibly lucky to do what I do.

 

You are the Keynote Presenter at the ADUG 2016 Symposium in Sydney and Melbourne.
Can you tell us some interesting uses for the topics that are in your presentation

Well, mostly it’s about writing applications much more quickly, and frankly, avoiding SQL like the plague. It’s been many, many years since I found anything interesting about writing SQL, so if I can avoid it and let an ORM framework deal with it while still getting the performance I need, then sign me up.

One last question – what is going through your head recently in relation to software development

I’m currently very interested in how Agile techniques and ideas have spread from Development into other areas of the business, like Operations with the DevOps movement. Taking the same ideas of automation, shorter feedback loops, etc and pushing it out into other areas, effectively manipulating other parts of the business as if it were code, is fascinating to me. This is an area I’m spending more time on professionally.
You can find Malcolm Groves at www.code-partners.com
@malgroves on Twitter and himself on Facebook.
 

Meet Malcolm at the 2016 Australian Delphi User Group Symposium
* Thursday 4th August Sydney
* Friday 5th August Melbourne
Interview by Scott Hollows,  July 2016
ADUG Vice President and 2016 Symposium Herder Of Cats