byte-motion / RNL_RAPIDLibrary

A standard library of functionality for the RAPID programming language
MIT License
0 stars 1 forks source link

Workshop to Qualify our new programming procedures with Kolonial #56

Closed TheHarvard closed 3 years ago

TheHarvard commented 3 years ago

W2 or W3 will be a workshop at kolonial to convince them that our code revision system and new code procedures are adequate for a long term Profesional partnership.

Kolonial will give a spesific example case that we will solve as part of the Workshop/demonstration.

TheHarvard commented 3 years ago

see #54

TheHarvard commented 3 years ago

Anders Petterson notified that task from kolonial will arrive the 2020/01/18 and that we will leave the week after (2020/01/25?)

TheHarvard commented 3 years ago

Anders Petterson requested from @TheHarvard and @RobotSigmund a 200-400 word paragraph that describes how RN are improving the problems Kolonial has reacted on. This is to be included in the offer we send Kolonial for their next projects.

Here follows a draft:

@TheHarvard and @RobotSigmund should go over this draft and finalize it (as well as translate it) before 2020-01-08 18:00

Programming

RobotNorge has over the last couple of years had a wide-reaching focus on improving the quality and quality control of the different parts of our business, among these programming. In the last year we have had multiple activities focused on this.

We have established a team of 4 of our top programmers that meet regularly to discuss code quality, standardization, and ongoing projects. This team works closely with RobotNorge leadership and quality assurance.

This team has decided to start using the tools git and Github to maintain and organize code development and maintenance. These tools are already widely used and recognized in the IT industry and simplify collaboration on large codebases.

The team has created internal RobotNorge style guides, naming conventions, and standardized modules with the intention to reduce the variation in the code we write as much as possible. The style guides and naming conventions are based on a combination of the team's experiences, as well as inspiration from similar documents for (IT) industry-standard programming languages like Python, C ++, and C#.

The team has also established new routines for coding which rely on peer reviews at given milestones to ensure that code is in accordance with internal style guides, naming conventions, and has adequate quality, as well as establishing a dedicated position for internal programming support and training in RobotNorge that will be held by Sigmund Straumland, one of our central senior programmers.

The team has created and are currently running the first field tests of a standardized framework in the RAPID robot programming language, which contain standard solutions for common applications, as well as expands the robots relatively simple programming language with advanced features that enhance scalability, modularity, code control, and brings the feature set closer to what you would expect from other modern programming languages. These additions include features like:

Going forward we have ensured that the programming team will continue to continuously improve and update our internal procedures for programming by regular meetings and communication/collaboration through tools like Github.

While it will take time before all of these activities are completely realized, we believe that we have been able to address the important issues with the quality of our code development that was pointed out during earlier projects, and that we have laid the foundations for continual improvement which will ensure that the quality of our programs will continue to improve and not stagnate.

RobotSigmund commented 3 years ago

A very good draft. Perhaps we should include some information on how existing code will be maintained and collaborated on by RN service/aftermarket? May not be necessary.

TheHarvard commented 3 years ago

Talked to @RobotSigmund .

We agree on the draft.

TheHarvard commented 3 years ago

Here follows the translation.

I would like if @RobotSigmund would have a once over just to check if he agrees. (translation is not my forte)...

=== English Version (Original) ===

Programming

RobotNorge has over the last couple of years had a wide-reaching focus on improving the quality and quality control of the different parts of our business, among these programming. In the last year we have had multiple activities focused on this.

We have established a team of 4 of our top programmers that meet regularly to discuss code quality, standardization, and ongoing projects. This team works closely with RobotNorge leadership and quality assurance.

This team has decided to start using the tools git and Github to maintain and organize code, and perform version control as part of development and maintenance. These tools are already widely used and recognized in the IT industry and simplify collaboration on large codebases.

The team has created internal RobotNorge style guides, naming conventions, and standardized modules with the intention to reduce the variation in the code we write as much as possible. The style guides and naming conventions are based on a combination of the team's experiences, as well as inspiration from similar documents for (IT) industry-standard programming languages like Python, C ++, and C#.

The team has also established new routines for coding which rely on peer reviews at given milestones to ensure that code is in accordance with internal style guides, naming conventions, and has adequate quality, as well as establishing a dedicated position for internal programming support and training in RobotNorge that will be held by Sigmund Straumland, one of our central senior programmers.

The team has created and are currently running the first field tests of a standardized framework in the RAPID robot programming language, which contain standard solutions for common applications, as well as expands the robots relatively simple programming language with advanced features that enhance scalability, modularity, code control, and brings the feature set closer to what you would expect from other modern programming languages. These additions include features like:

Going forward we have ensured that the programming team will continue to continuously improve and update our internal procedures for programming by regular meetings and communication/collaboration through tools like Github.

While it will take time before all of these activities are completely realized, we believe that we have been able to address the important issues with the quality of our code development that was pointed out during earlier projects, and that we have laid the foundations for continual improvement which will ensure that the quality of our programs will continue to improve and not stagnate.

=== Bokmål Version (Translated) ===

Programming

RobotNorge har de siste par åene hatt et sterkt fokus på å bedre kvaliteten og kvalitets kontrollen for di forskjellige fagene vi arbeider med, og bland disse har programmering særlig prioritert. Det siste året har vi satt i gang flere aktiviteter for å oppnå dette.

Vi har etablert et team av 4 av våre sentrale programmerere som møtes med jevne mellomrom for å diskutere kvaliteten på kode, standardisering, og pågående prosjekter. Dette teamet arbeider og nært sammen med RobotNorge ledelse og kvalitets kontroll.

Dette teamet har valgt å ta i bruk verktøyene git og Github for å vedlikeholde og organisere kode, og utføre versjonskontroll for utvikling og vedlikehold. Disse verktøyene er anerkjente i IT industrien, og blir brukt til å forenkle samarbeid mot program utvikling.

Teamet har lagt ei rekke interne RobotNorge dokumenter, style guides, naming conventions, og standardiserte moduler for å redusere variasjonen i hvordan vi koder. Style guides og naming conventions er basert på en kombinasjon av teamets erfaringer, og inspirasjon tatt fra tilsvarande dokumenter for moderne programmeringsspråk som Python, C++ og C#.

Teamet har etablert nye rutiner for programmering som bruker, bland anna, peer review ved flere milepæler gjennom livssyklusen til et prosjekt til å sikre at programmet samsvarer med interne retningslinjer og har best mulig kvalitet. Vi har og etablert en egen stilling for intern support og opplæring, som vår senior programmerer Sigmund Straumland vil overta.

Teamet har og utviklet, og kjører i for tiden di første felt testene på et standardisert rammeverk for RAPID programmeringsspråket til roboter. Dette rammeverket inkluderer standard løsningen for vanlige applikasjoner, og utvider det i utgangspunktet simple programmeringsspråket med avanserte funksjoner for betre skalerbarhet, modulærbarhet, kode kontroll og gir språket flere funksjoner og strukturer som en forventer å finne i andre moderne programmeringsspråk, bland annet:

En viktig del av alt det nye er at vi har sikret videre og kontinuerlig forbedring av kvaliteten til koden og programmene våre. Dette har vi sikret gjennom klare roller og vanlige møter i teamet for program kvalitet, samt med å ta i bruk verktøy som github som lar os samarbeide og hente in erfaringer ikke bare fra teamet, men og fra alle som arbeider med programmering.

Det vil ta tid før alle disse handlingene kommer i mål og vi kan få full effekt av de, men vi mener vi har klart å adressere di viktige manglene med kvaliteten på koden som har blitt flagget ved tidligere samarbeid, og at vi har bygget en grunnmur av kontinuerlig forbedring som vil la oss øke kompetanse og kvalitet og holde oss oppdatert ettersom industrien beveger seg framover.

TheHarvard commented 3 years ago

Here is the Case from kolonial:

Stacking solutions from Robot Norge.pdf

I will create a new repository:

https://github.com/RobotNorge-AS/Kolonial-Prog-Demo

TheHarvard commented 3 years ago

2021-01-19 Phone conversation with Claes Bergsten claes.bergsten@kolonial.no (utviklings direktør logistikk) conserning agenda and goal of workshop.

Agenda

Everyone is techical personell, so keep it technical!

TheHarvard commented 3 years ago

@RobotSigmund Let's have a short review of this.

RobotSigmund commented 3 years ago

-Virtual commissioning (testing programs, verification before deploy) -Testmodule for various functions in the rapidprograms. -Scripting of deployprocess not practical.

TheHarvard commented 3 years ago

closed due to kolonial going for a different solution