Home
News & Events
Publications
Deliverables Presentations Scientific Publications Industrial Results
Partners
About Arrowhead Tools
Automation and Digitalisation Engineering Engineering tool and tool chain architecture Integration and interoperability platform – Arrowhead Framework Industrial use cases Training Standardisation
Contact
Home News Publications Partners About Arrowhead Tools Contact

New Base Library for the Arrowhead Framework

New Base Library for the Arrowhead Framework

Tweet

A strong programming background and a penchant for ever-elusive “beautiful code” has led LTU’s Emanuel Palm to develop a new Java library for the Arrowhead Framework.

In striving to establish a set of standards, Arrowhead systems need to be implemented and tested to ensure that they communicate smoothly and securely. The sheer volume of operations and systems in the Arrowhead collaboration means that the project produces large quantities of code. Faced with implementing his own Arrowhead system, Palm decided that it would be convenient to create a base library, although he admits that he hadn’t necessarily realized how much work it would entail to create a well-functioning library.

Years spent working as a professional programmer, means that Palm has experience of numerous coding languages and a wide array of code libraries - both better and poorer examples. He points out that a common shortcoming of code produced purely within the bounds of academia is that once it has served its purpose it remains dormant - at best a potentially interesting dead end on GitHub. An active initiator of so-called GitHub issues, Palm has started a process of discussion about the assumptions and underlying ideas of other code libraries in the Arrowhead project, which in turn has helped promote the creation a supervision board to oversee the development process and create a smoothly functioning feedback loop. Palm hopes that this will contribute to bridging the gap between industry and academia by peaking the interest of active software engineers and continuing the development of useful code - furthering the spillover benefits of the Arrowhead project.  

Design philosophy
Correctness, convenience and performance - in that order - form the design principles behind the new Arrowhead Base Library. Good programming practice means using minimal code to create a user experience that is as simple and intuitive as possible. Palm’s philosophy is based on the idea of “failing fast”, validating as much user input as possible to help users understand mistakes early rather than allowing them to accumulate and end with time consuming failures later on in the process. He explains that, when it comes to code,  “convenience for the library user often means inconvenience for the library creator”, comparing good websites that leave the user feeling that everything is clear and functions seamlessly with sites where “you feel permanently lost”. This convenience means, for instance, not requiring users to explicitly provide information that can be correctly derived from context. Performance means that Palm’s system is optimized for a short start-up time and prioritizes runtime over compile-time.    

The library
The result of Palm’s labours is a Java 11 library that approaches Arrowhead systems in a different way to the existing libraries. The library is currently being used by Palm in the implementation of his own Arrowhead system as well as another Arrowhead contractor. For more information visit https://arkalix.se/

A strong programming background and a penchant for ever-elusive “beautiful code” has led LTU’s Emanuel Palm to develop a new Java library for the Arrowhead Framework.

In striving to establish a set of standards, Arrowhead systems need to be implemented and tested to ensure that they communicate smoothly and securely. The sheer volume of operations and systems in the Arrowhead collaboration means that the project produces large quantities of code. Faced with implementing his own Arrowhead system, Palm decided that it would be convenient to create a base library, although he admits that he hadn’t necessarily realized how much work it would entail to create a well-functioning library.

Years spent working as a professional programmer, means that Palm has experience of numerous coding languages and a wide array of code libraries - both better and poorer examples. He points out that a common shortcoming of code produced purely within the bounds of academia is that once it has served its purpose it remains dormant - at best a potentially interesting dead end on GitHub. An active initiator of so-called GitHub issues, Palm has started a process of discussion about the assumptions and underlying ideas of other code libraries in the Arrowhead project, which in turn has helped promote the creation a supervision board to oversee the development process and create a smoothly functioning feedback loop. Palm hopes that this will contribute to bridging the gap between industry and academia by peaking the interest of active software engineers and continuing the development of useful code - furthering the spillover benefits of the Arrowhead project.  

Design philosophy
Correctness, convenience and performance - in that order - form the design principles behind the new Arrowhead Base Library. Good programming practice means using minimal code to create a user experience that is as simple and intuitive as possible. Palm’s philosophy is based on the idea of “failing fast”, validating as much user input as possible to help users understand mistakes early rather than allowing them to accumulate and end with time consuming failures later on in the process. He explains that, when it comes to code,  “convenience for the library user often means inconvenience for the library creator”, comparing good websites that leave the user feeling that everything is clear and functions seamlessly with sites where “you feel permanently lost”. This convenience means, for instance, not requiring users to explicitly provide information that can be correctly derived from context. Performance means that Palm’s system is optimized for a short start-up time and prioritizes runtime over compile-time.    

The library
The result of Palm’s labours is a Java 11 library that approaches Arrowhead systems in a different way to the existing libraries. The library is currently being used by Palm in the implementation of his own Arrowhead system as well as another Arrowhead contractor. For more information visit https://arkalix.se/

Latest News

  • Europe’s largest project for digitization of industry
  • Kick-off in Gothenburg
  • The Arrowhead Tools project has officially started
  • Joint WS meeting in Porto
  • Arrowhead Tools expert group gathered at IncQuery labs in Budapest
  • Passing on the fire – let the lighthouse shine
  • Professor Delsing keynote speaker at WFCS2020
  • Arrowhead Tools recognized in Royal Academy top 100
  • Management for Industry 4.0 at NOMS 2020 in Budapest
  • Exchange Network Architecture could take smart contracts to the next level
  • Arrowhead Tools and KYKLOS 4.0: The collaboration on industry 4.0 continues to expand
  • A Step toward Solving Interoperability Problems
  • Arrowhead Tools Partners part of the new Change2Twin Collaboration activity
  • Join Arrowhead Framework Bi-weekly Teleconferences
  • The Norwegian Mountain Bike Experiment
  • Arrowhead Partners in New Initiative
  • Arrowhead Partner Working with European Space Agency on Data Standardization
  • New Base Library for the Arrowhead Framework
  • Jerker Delsing elected Vice President of Artemis
  • Arrowhead Tools joins the Eclipse Family
  • Arrowhead Tools and the Added Value of Ecosystems
  • Smooth sailing ahead for Arrowhead Tools
  • Arrowhead partner venturing into new horizons
  • Toward an Automated Compliance Framework
  • Open Standards Continue to Make Inroads
  • Greater Efficiency for Systems of Resource Constrained Devices
  • The Eclipse Arrowhead Framework at EclipseCon2020
  • Open Standards are Foundational for Arrowhead Tools Partner
  • Eclipse Arrowhead and Industry 4.0 in Focus at Interizon Day 2020
  • Big Data and Industry 4.0 at Production Cluster 2020
  • Open Data for Smart Production at Combient Smart Production Forum
  • Artificial Intelligence & Machine Learning for the Steel Industry
  • An Overview of the Arrowhead Project
  • Bringing Clouds Down to Earth
  • Integration across Europe with Eclipse Arrowhead
  • Capturing and Monitoring a Production Plant
  • Shifting focus to our industrial partners
  • Contract aware automation
  • Contract aware production management
  • Supporting OT-IT integration
  • Norwegian use case at International CAE Conference
  • Scania use case shows benefits of Eclipse Arrowhead approach
  • Secure onboarding enables increased automation and optimisation
  • Putting Production Systems in the Right Context
  • Digital Archiving and Information Availability
  • Eclipse Arrowhead Adaptor Software Package
  • A Process Data Generator to Boost Digital Manaufacturing
  • Eclipse Arrowhead progress and future directions
  • A Process Data Generator to Boost Digital Manaufacturing (1)
  • Product Lifecycle Tools for Electronic Design Information
  • Eclipse Arrowhead Partner Jotne Presenting at Digital Twin Workshop
  • Lindbäcks participate in project to reduce lead times
  • A Digital Platform for Remote Earthworks Development
  • Deployment of Local Automation Clouds
  • Smarter, more sustainable building services
  • Smart Kitting to Manage High Diversity in Production
  • Digital Twins for Electrical Installations
  • Standard Based Digital Twins with Flexible IoT Solutions
  • SoS Engineering of IoT Edge Devices

Contact

For more information about the Arrowhead project, please contact: info@arrowhead.eu


This project has received funding from ECSEL Joint Undertaking (JU) under grant agreement No 826452. The JU receives support from the European Union’s Horizon 2020 research and innovation programme and Norway and Switzerland.


Artemis

ARTEMIS Industry Association strives for a leading position of Europe in Embedded Intelligence. The Association is a membership organization for the European R&I actors with more than 180 members and associates from all over Europe. The multidisciplinary nature of the membership provides an excellent network for the exchange of technology ideas, cross-domain fertilisation, as well as for large innovation initiatives. As private partner in ECSEL Joint Undertaking, ARTEMIS-IA supports formation of consortia and initiation of project proposals for joint collaboration and creates the meeting place where key industry players and other R&D&I actors identify strategic high priority topics for collaborative R&I projects.
https://artemis-ia.eu


COPYRIGHT © 2013-2022 ARROWHEAD