Posts

Code review resources

Code reviews are an important part of any software development process, and will improve code quality if the supporting workflow has been implemented correctly, and ideally with appropriate tool support.  Dr.Michaela Greiler An excellent resource I have recently discovered is that of Dr.Michaela Greiler, which is here: Hi and Welcome - Doctor McKayla (michaelagreiler.com) And her checklist for your reviews is here:  A Code Review Checklist - Focus on the Important Issues - Doctor McKayla (michaelagreiler.com) Process And an interesting article about the etiquette of code reviews (how you present feedback is critical to ensure a positive ongoing working relationship !)  is here : Top Code Review Best Practices | Built In   Tools A useful list of code review support tools can be found here: The Top Code Review Tools | WhiteSource (whitesourcesoftware.com) One such open source tool being Gerrit, available here: Gerrit Code Review | Gerrit Code Review

Finding (and Getting !) Your Industrial Placement

Many engineering undergraduate courses appear to offer an industrial placement, possibly the third year of your degree during which you have the opportunity of working for an organisation offering a role aligned with your course.  If this is available, I would strongly encourage you to take up this opportunity.  From my personal experience,  it puts into perspective the academic theory of your course,  enables you to see how the real world works,  observe and engage in the many activities required to run a business,  helps to confirm whether your initial chosen career path is really the one for you or find out what you would really like to do, and  enables you to build up your CV - and  possibly provide an income for the year. How do I get a placement ? Well, it isn't going to just fall into your lap ! - you need to plan, prepare, and actively work towards getting that placement - you will have competition for the places on offer.  Firstly, s...

Improving Code Quality

 What is code quality ? Well the definition will to some extent be determined by the context in which the software is used, however typically it will include : fitness for purpose, meeting the requirements - efficiently and reliably, and  code readability and maintainability.  How do we improve code quality ? Beyond personal skill, experience and attention to detail, the use of code reviews and static and dynamic analysis are thought to improve quality. Research by Microsoft(C) and Google (C) has shown that 80% of code reviews trigger a change, inferring that both the reviewer and reviewee agreed upon a change to improve the original code.  Static Analysis Tools IAR C-STAT Visual Studio tool Code Complexity Tool Lizard:  http://www.lizard.ws/ References Greiler, M. (2020) Episode 400: Greiler on Code Review, Software Engineering Radio, [Online]. Available at  https://www.se-radio.net/2020/02/episode-400-michaela-greiler-on-code-reviews/  (Accessed 29 O...

Careers in Advanced Automation

Advanced automation is a trend which is only set to accelerate, and even faster now companies will not only attempt to optimise their manufacturing processes to reduce cost but also limit human involvement which has proved so difficult during the Covid pandemic.   These aims lead to increased automation, including the advanced robotic and vision systems we are now encountering. Jeff Chapman has his own recruitment consultancy specialising in advanced automation, and discusses his unique insight during an interview on the Robot Nation podcast (Chapman, 2020). His observations are relevant to both engineers seeking employment in the industry, and to employers. The employment market is changing, with job seekers now able to easily research a company online, build a good understanding of the organisation, including the products and services it offers, its current business  position, and even how employees who work their rate the company and it's working environment. In the m...

Useful Embedded Software Development Resources

A few embedded software development resources I have found useful : Feabhas is an embedded software development consultancy, with a great blog and free whitepapers, to which co-founder Niall Cooling regularly contributes.   https://www.feabhas.com/   Industry Magazine EE Times is here  and the Embedded website is here

Useful Robotic Resources

Image
A few robotic resources I have found useful The Robotic Industries Association has useful free resources, including a blog, podcasts, and webinars, with automation industry focused information - including safety standards.  https://www.robotics.org/

Pivot To Home-working

Reflections on a move to MS Teams™ to support home working during the Covid-19 Pandemic We hired a new IT manager just before the recent Covid-19 pandemic lock-down, who completed a project moving us to MS Teams. This has proved inspired, enabling an almost seamless move to remote working for an R&D staff of around 15 engineers. We use MS Teams™ for meetings, and I believe the video is important for small team or one to one conversations because otherwise the facial expressions and body language which we as humans use to interpret the emphasis of verbal communication is lost. Screen sharing has proved useful to facilitate group work on a document, and for presenting. In larger meetings video can be switched off ( to save bandwidth of course), enabling involvement in a meeting by listening whilst also rapid typing in order to attend to other important tasks. MS Teams™ supports effective communication management because all information (conversations and documents) is accessible in o...