The programming competition I attended was a frantic two-hour challenge with the students broken up into teams of three and paired with a mentor. All the teams were given the same 13 questions to solve which ranged from algorithm design and logic puzzles to HTML/CSS questions. Any language could be used to solve but python was the language taught throughout the week. The camaraderie in the room was amazing, the students were excited to be competing and even more, I think, happy to be among peers that were equally interested in maths, science and all things computer geek. I was very impressed by the familiarity of my team with their language of choice and the tool chains that they have mastered and just took for granted. Comparing this to my early days of programming at school where the compilers and interpreters were mostly proprietary and required a good chunk of change to get started even at a hobbyist programmer. Open access and availability to the fundamental tools of the trade is vital to growing the discipline of software engineering and this point was hammered home to me during the event. Tribute needs to be paid to the GNU community for their foresight to make available the necessary tool chains and ultimately create the expectation that freedom to use these tools is critical to a healthy and innovative software industry. I admired the savvy use of different tools and the ease at which the students bounced between them to achieve their tasks. This comfort with things digital a telling sign for bricks and mortar business that there is no going back, the expectation of online availability and interoperability are well and truly part of the next generations psyche (as if we really needed further proof?).

The impact of smartphones and connected devices was obvious as well in the student mindset. It was not uncommon to hear students talk about how they wanted to go to university in order to get into programming for embedded systems. The iPhone has certainly created a rock star aura that is attracting more than its share of young practitioners. This year’s NCSS competition managed to catch out the organisers and tutors with some teams solving all thirteen questions. Associate Professor James Curran and his team had to scramble to put a fourteenth question into play. At the end of the night you could see how the tutors were brimming with pride that the students were able to exceed their expectations. Based upon what I saw in mine and some of the nearby teams here is some advice for next year's competitors. You don’t have to solve the problem in a single line of code. There was a classic “impetuous youth” feel that the solution could be reduced to a few operations. Some of the questions were deliberately set up to only be solved in a multi-step process. Learn to read through the language. The questions were all phrased in plain English and usually coloured with a “monster” theme (the competition was held on Friday the 13th). A good first step was to rewrite the question on paper as a series of discrete facts. A professional software engineer will probably spend more time in this requirements phase with their client/user than actually coding the solution.

Use the test data. Some of the challenges came with implicit test data. Before you submit your solution, plug in the test data and see that you’ve got it right. Rotate the strike. When you get stuck on a problem, talk about it with your team and maybe hand the question to another member to try to solve and move on to the next one. You can always come back to it later. I had a great time and thank Dr. James Curran and his team of tutors for the opportunity to participate. Thanks to all the corporate sponsors as well for enabling the event as well as participating as industry mentors. I wish the students the best of luck with their studies and I hope that they continue their journey to becoming IT professionals. Some great talent is on the way! The NCSS website can be found at http://www.ncss.edu.au/ What advice would you give to someone considering the IT profession?

If readers are interested, I can post up a few of the questions the students were trying to solve. Loading This author is on Google+ Follow IT Pro on Twitter