(WO) – Neptune Energy announced first production from its operated Adorf Z17 natural gas well in the municipality of Georgsdorf The Z17 well - in the Carboniferous formation - is expected to increase Neptune’s production from the Adorf license by 1,800 boed to around 6,300 boed Construction of a dedicated processing plant at the site for treatment of the gas was also completed earlier this year Neptune Energy’s Managing Director in Germany “The Adorf Carboniferous field development is one of Neptune’s most promising activities in Germany and demonstrates our desire to grow the business here “The Adorf field is already an important contributor to domestic energy in Germany supplying enough gas to heat more than 150,000 households.” The Adorf natural gas field was discovered in 2020 and the first well was brought into production in October the same year increased Neptune’s production from the license to around 4,500 boed at the beginning of 2022 reached a final depth of 4,773 meters in April this year and is due to begin production in the third quarter of 2023 Neptune Energy owns 100% of the Adorf Carboniferous gas field Neptune Energy has kicked off drilling at its operated Adorf Z18 gas production well in the municipality of Georgsdorf with final depth of around 4700 m expected to be reached in June this year “The Adorf Carboniferous field development is one of our most promising activities in Germany and demonstrates our desire to grow the business here,” said Neptune Energy’s managing director in Germany “The Adorf field is already an important contributor to domestic energy supplies in Germany providing enough gas to heat more than 100,000 households.” The Adorf Carboniferous gas field was discovered in 2020 and the first well increased Neptune’s production from the license to around 4,000 BOE/D at the beginning of 2022 The Adorf Z17 reached its final depth at the end of 2022 and will be tested for production this quarter The construction of a modern treatment plant or the natural gas from Adorf Z17 and Z18 is ongoing the Society of Petroleum Engineers’ flagship magazine presents authoritative briefs and features on technology advancements in exploration and production ISSN: 1944-978X (Online)ISSN: 0149-2136 (Print) By 2016-04-18T14:01:00+01:00 who has made more than 200 films with directors including Sam Peckinpah will be honoured with the film festival’s Pardo Alla Carriera German actor and screen personality Mario Adorf is to receive the Pardo Alla Carriera at the 69th Locarno Film Festival (Aug 3-13) The tribute will tie in with the festival’s 2016 Retrospective on German Cinema with screenings of Adorf’s early films such as Nachts wenn der Teufel kam by Robert Siodmak (1957) and Der Arzt von Stalingrad by Géza von Radványi (1958) as well as later performances and a special conversation with the festival audience praised the “seemingly endless gallery of characters” played by the Swiss-born actor “He has left his mark not just on German but on European cinema periods and forms of expression,” said Chatrian Screen profiles all the films in the Cannes Film Festival’s Official Selection and parallel sections Bookmark this page to keep track of all the latest festival dates Screen profiles the Piazza Grande and International Competition titles selected for Locarno’s 75th edition Screen International is the essential resource for the international film industry access to the Screen International archive and supplements including Stars of Tomorrow and World of Locations Site powered by Webvision Cloud The well is expected to boost the company’s production from the licence by 1,800boepd UK-based Neptune Energy has commenced production from its Adorf Z17 gas well in the municipality of Georgsdorf The well is expected to boost Neptune’s production from the Adorf licence by 1,800 barrels of oil equivalent per day (boepd) to around 6,300boepd The building of a special processing facility at the location for treating the gas was also finished earlier this year Neptune Energy managing director in Germany Andreas Scheck said: “The Adorf Carboniferous field development is one of Neptune’s most promising activities in Germany and demonstrates our desire to grow the business here The Adorf gas field was discovered in 2020 and in October of the same year the first well Don’t let policy changes catch you off guard Stay proactive with real-time data and expert analysis a second well called Adorf Z16 raised Neptune’s production from the licence to around 4,500boepd is expected to start producing in the third quarter of 2023 after reaching a final depth of 4,773m in April of this year Recently, Neptune Energy, with its partners Vår Energi, Sval Energi and DNO, started production from the Fenja oil and gas field The oil and gas field is located in the Norwegian Sea 120km north of Kristiansund at a depth of 350m Last month, the company commenced production of gas from the 11th well in the Cygnus gas field in the North Sea The well is expected to produce around 4,000boepd of gas Give your business an edge with our leading industry insights View all newsletters from across the GlobalData Media network Metrics details The ever-growing availability of computing power and the sustained development of advanced computational methods have contributed much to recent scientific progress These developments present new challenges driven by the sheer amount of calculations and data to manage Next-generation exascale supercomputers will harden these challenges such that automated and scalable solutions become crucial a robust open-source high-throughput infrastructure addressing the challenges arising from the needs of automated workflow management and data provenance recording we introduce developments and capabilities required to reach sustained performance with AiiDA supporting throughputs of tens of thousands processes/hour while automatically preserving and storing the full data provenance in a relational database making it queryable and traversable thus enabling high-performance data analytics AiiDA’s workflow language provides advanced automation error handling features and a flexible plugin model to allow interfacing with external simulation software The associated plugin registry enables seamless sharing of extensions empowering a vibrant user community dedicated to making simulations more robust Many computational workflow management systems have been devised over the past decades (s.apache.org/existing-workflow-systems) One popular design choice is to use markup languages to describe the logic of static workflows While this allows the workflow syntax to be kept simple it tends to come at the cost of sacrificing the flexibility needed to dynamically change the execution path taken in response to the intermediate results (or errors) encountered such flexibility is crucial in many fields and in particular in computational materials science which has been the original driver for the development of AiiDA AiiDA aims to provide a framework that enables designing and running complex high-throughput computational workflows with full automatic provenance and built-in support for high-performance computing on remote supercomputers. The architecture, as shown in Fig. 1, is designed with these goals in mind. Schematic overview of the architecture of AiiDA 1.0 Any calculation or workflow that is run by the engine will be automatically recorded in the provenance graph in order to enable the reproducibility of the results The definition and implementation of the provenance graph is explained in greater detail in section “The Provenance Model” the ORM also provides the tools to interact with the nodes of the provenance graph and inspect their content The QueryBuilder is the tool that allows efficient traversal of the provenance graph to select (sets of) nodes of interest and is described in detail in section “Database Abstraction and Querying Language” The contents of the provenance graph are stored in a file repository on the local file system and a relational database. The mapping between the database and the Python API is performed by an Object Relational Mapper (ORM): currently the user can choose between the Django (djangoproject.com) or SQLAlchemy (sqlalchemy.org) library users can interact with AiiDA through a command line interface called verdi an interactive Python shell or normal Python scripts The REST API allows one to query the provenance graph through HTTP calls (see section “The REST API” for more details) AiiDA itself can communicate with computing resources either locally or over SSH to run calculations on those resources and comes with built-in support for most well-known and used job schedulers The engine is the component of AiiDA in charge of automating the execution of calculations and workflows AiiDA is capable of managing calculations either on the local computer where AiiDA is installed or on any number of remote resources (see section “Running on external computers: calculation jobs”) AiiDA provides a workflow language to define the logic to run complex sequences of steps with potentially nested subworkflows and calculations The engine consists of runners that are executed in parallel as different operating system processes, supervised by a daemon that monitors and relaunches them if they were to die. Each runner can process tasks independently and concurrently, distributing the workload involved in workflow and calculation execution. Task distribution is achieved via a task queue implemented using the AMQP protocol through RabbitMQ (rabbitmq.com) to guarantee reliable scheduling and almost instantaneous reaction to events such as the request for the submission of a new calculation or workflow or continuing a workflow when the calculations or subworkflows it depends upon are completed Additional technical details on the implementation of the engine and the use of the event-based task queue can be found in the Supplementary Information the AiiDA engine is able to sustain high-throughput workloads involving tens of thousands of concurrent tasks every hour distributed on multiple computational resources as we demonstrate in the “Performance” section during execution AiiDA automatically stores all data and actions in the provenance graph (see “The Provenance Model”) the calculations and their inputs and outputs In this section we define the three core concepts defined by the AiiDA engine (processes calculations and workflows) and we briefly describe the key aspects of the engine implementation any entity that handles input data to produce output data Processes come in two flavours: calculations and workflows These two terms in AiiDA have a more specific meaning than their use in common parlance calculations are defined as processes that create new data as output A typical case is the execution of a simulation code on a remote computer workflows in AiiDA are solely tasked with the orchestration of subprocesses calling calculations and/or other workflows in a certain logical sequence workflows are not allowed to generate new data usually created by one of the calculations that they called (either directly or indirectly via a subworkflow) This distinction is critical in the design of the provenance model of AiiDA allowing to differentiate the part of the provenance graph that represents exactly how data was generated (the data provenance) from the logical provenance that captures the why of the data creation This distinction is elaborated in more detail in the subsection “Logical and data provenance” users do not interact directly with calculations or workflows but with specific subclasses that define additional functionalities and are appropriate in different use cases that we describe below The simplest way to define a process (a calculation or a workflow) is to add a line (@calcfunction or @workfunction respectively) on top of a standard Python function (this line is called a decorator in Python; see the supplementary section “Example of a work chain and calculation function” for an example) Calculation and work functions are collectively referred to as process functions The logic of the @calcfunction and @workfunction decorators is defined by AiiDA and they signal to AiiDA’s engine that any time the function is called its execution should be recorded in the provenance graph linking up the inputs passed and the outputs it produced if a work function calls another process function this action is also represented in the provenance graph as a connection between the caller and the called process This approach of defining processes is very intuitive and powerful because any standard Python function can be converted into a process function simply by adding a decorator as long as it accepts AiiDA datatypes as input and returns an AiiDA datatype (or a dictionary of AiiDA datatypes) as output process functions show their limits when running very long workflows that can last for days (e.g. in the case of molecular-dynamics simulations) The reason is that process functions are executed on the local machine and since it is not possible to interrupt the execution of a Python function and resume it later rebooted or disconnected from the network until the process is finished Of course one could resort to calling external codes through subprocesses especially if the external code needs to be run on a remote machine and/or through a job scheduler AiiDA implements two additional processes: calculation jobs to manage the execution of external codes through job schedulers and work chains to implement and orchestrate long-running workflows with the possibility of pausing and restarting between steps are used to manage the execution of external codes commonly run via a job scheduler and optionally on a remote machine The CalcJob can be adapted for external codes through plugins (see “The Plugin System”) which define how the required raw input files are constructed from the AiiDA datatypes that are provided as input the engine takes over and performs all the necessary steps to run the calculation to completion These include uploading the raw input files querying the job state and waiting for it to finish and finally retrieving the files to be stored locally The retrieved files can optionally be parsed into AiiDA datatypes that are registered as outputs of the calculation The parser logic is also defined through plugins since this also requires code-specific logic The explicit parsing into AiiDA datatypes makes the outputs interoperable among different codes and allows for their direct reuse as inputs of new calculations we implemented optimised algorithms to automatically reschedule failed tasks through an exponential-backoff mechanism recovering from common transient errors such as connection issues If the task fails multiple times consecutively (for example because the remote machine went offline) The process can be resumed effortlessly by the user when the issue is resolved and the AiiDA engine ensures that no data loss occurs as the calculation resumes from where it was paused to avoid overloading remote machines with connections rendering them potentially unresponsive also to other users AiiDA implements a connection pooling algorithm Connections to the same computer are grouped and new requests are funnelled within existing open connections If no connection is open and a new one needs to be created AiiDA guarantees that a configurable minimal time interval between them is respected AiiDA caches the list of jobs in the scheduler queue and respects a minimum (configurable) timeout when refreshing their state the limitation of a workfunction is that its execution is atomic and blocking if workfunctions are used to implement complex workflows calling many long-running calculation jobs intermediate progress within the function body cannot be persisted if the process is interrupted (for instance to restart the AiiDA daemon or to reboot the machine where AiiDA is running) AiiDA implements the WorkChain process class Work chains allow users to specify units of work (like the processing of data or the submission of subprocesses) as steps possibly including while and if/else logic) is defined in the process specification the execution of the workflow is managed by the AiiDA engine that gets back control between steps executing the next one only when all subprocesses have finished between steps the engine persists the workflow state to the database if the engine is stopped no progress is lost and the engine will continue the workflow execution from the last persisted step (or the engine will keep waiting for running subprocesses see “Community building”) that generates human-readable documentation for any work chain The work chain interface encourages writing modular workflows with lower-level work chains implemented to solve specific tasks that are often code-dependent restarting or automatic tuning of parameters Higher-level work chains can then wrap around these directly exposing all inputs of the lower-level workflows or only a few with the others being determined by the workflow logic Such wrapping work chains can implement additional functionality less focused on the technical details of the code execution but rather focusing on the evaluation of scientific quantities of interest workflows enable the delivery of fully automated turn-key solutions that require only minimal inputs and encode the scientists’ knowledge on how to compute a given result from code-specific technicalities to the handling of the parameters involved in the scientific models of the simulations we emphasise that implementing workflows directly in Python is a design choice Since there is no translation between what the user implements and what the engine executes the user can leverage the power of the full Python and AiiDA APIs when designing workflows this design directly facilitates debugging using standard Python tools and seamless integration with external libraries for data manipulation (a) A schematic provenance graph representing the execution of a workflow W1 receiving three data nodes D1 W1 computes the expression (x + y) · z by calling two calculations C1 (to perform the sum) and C2 (to perform the product) C1 creates the intermediate node D4 (with the value x + y) and C2 then creates the node D5 with the final result While this simplified example is purely for illustrative purposes it demonstrates that by storing execution information as a graph the provenance of all data is fully recorded (b) Data-provenance layer: it includes calculation and data nodes only showing the exact sequence of steps that led to the creation of the data nodes (c) Logical-provenance layer: it hides the details of all intermediate results and focuses only on how the workflow produced the final results from a given set of inputs While all nodes of the graph share a set of common properties there is a need to define custom properties based on what the node represents the various AiiDA processes (see “Engine and Workflow Language”) as well as data are represented by different node subtypes This makes it possible to implement functionality specific to each of them and to explicitly target nodes of a certain type when querying the graph (see “Database Abstraction and Querying Language”) The hierarchy of the node types in AiiDA This hierarchy is also mirrored in the Python code where Python classes are used to represent them The different node classes allow to implement custom functionality for each subtype the subclass hierarchy allows to query for specific node types Various data types are implemented by directly subclassing the Data class AiiDA ships with a few basic data types; for instance Float to represent a single float value and Dict for a dictionary of key-value pairs Arbitrary new data types can be defined through the plugin system (see “The plugin system”) The hierarchy of ProcessNode subclasses reflects the distinction in AiiDA between calculations and workflows represented by subclasses of CalculationNode or WorkflowNode in a provenance graph one finds instances of CalcJobNode representing executions by the engine of the corresponding process classes (CalcJob The intermediate classes in the hierarchy serve mostly as a taxonomic classifier and they are useful when querying the provenance graph (see “Database abstraction and querying language”) querying for WorkflowNodes will match both WorkChainNodes as well as WorkFunctionNodes All links have a type to indicate the semantic meaning of the relationship. In addition, links have a label that can be used, given a node, to distinguish nodes connected to it with the same link type. For example, labels identify the different input nodes to a process. A summary of all link types in AiiDA is shown in Fig. 4. Link types allowed in the AiiDA provenance graph Rectangles represent node types and arrows connecting them indicate the direction and the type of each link The symbols at the start and end of each arrow indicate the cardinality of the corresponding link types: 0..1 means that at most one node is allowed on that link endpoint for a given node on the opposite endpoint (for instance a Data node can have at most one CalculationNode as its creator); 0..* means that any number of nodes is possible (for instance a CalculationNode can have an arbitrary number of input Data nodes) a dagger (†) indicates that link labels must be unique for a given node on the opposite endpoint (for instance outgoing create links from a CalculationNode must have unique labels) Process nodes can have input and output links to data nodes input links can be of type INPUT_CALC and INPUT_WORK depending on the type of the linked process node output links can either be of type CREATE or RETURN (for calculation and workflow nodes respectively) explicitly highlighting the difference between calculation and workflow processes described in “Engine and Workflow Language” In addition to links between data and process nodes two additional link types exist between processes to indicate that a workflow called another process These links are called CALL_CALC and CALL_WORK depending on the type of the called process and are collectively referred to as call links Due to their semantic meaning, link types impose precise validation rules. First, a link type requires specific node types at its two endpoints. In addition, cardinality rules are defined, as illustrated in Fig. 4 any number of nodes can be linked to it by links of a given type For create and call links there are instead explicit restrictions: a data node can be created by at most one calculation while it can be returned by multiple workflows; a process can be called by at most one workflow while a workflow can call an arbitrary number of subprocesses uniqueness constraints on the labels of certain link types are enforced: the link labels of input nodes to a given process must be unique to guarantee that each input can be uniquely identified The same applies to the output nodes of a process Due to the rules defined in the previous sections AiiDA provenance graphs have useful properties The subgraph composed exclusively of data and calculation nodes together with the links that connect them forms a Directed Acyclic Graph (DAG) The acyclicity is a direct result of calculations only having outgoing links to data they created: output nodes are always generated as a result of execution and therefore cannot also simultaneously be part of the inputs of the process itself or of any parent process in the graph We refer to this subgraph as the data provenance since it is an exact record of the origin of the data assumptions can be made by the AiiDA query language (see “Database Abstraction and Querying Language”) for instance to define the concept of an ancestor of a given node as any node that can be reached following the links of the data-provenance DAG in the backward direction (i.e. moving from the node at the head of a link to the one at the tail) descendants are defined as nodes that can be reached following DAG links in the forward direction composed solely of data and workflow nodes and the links connecting them (including CALL_WORK links) since it focuses on the logical steps taken by the workflows when processing data and orchestrating processes the logical provenance subgraph also forms a directed graph that return links are not bound by the causality principle since they do not signify “creation” and workflows merely return outputs that have already been created by other calculations a workflow selecting one of its inputs based on some criteria will have a return link to that input The two layers of data and logical provenance share data nodes and are interconnected by CALL_CALC links. The separation of these two provenance layers has the additional benefit of allowing the granularity for the inspection of the provenance graph, as shown in Fig. 2(b,c) we described the basic properties that are common to all node types The various subtypes define the “schema” of the additional properties that fully define and describe the node AiiDA provides two data stores to persist these properties: a filesystem repository and a relational database (where any JSON-serialisable key-value pair can be saved see “Database Abstraction and Querying Language”) Properties that are stored in the database are named attributes properties that do not require querying and/or are very large in size are better stored in the repository so as not to overburden the database Attributes and the files in the repository are immutable once the node is stored since together they define the “content” of the node and allowing them to be changed would invalidate the provenance of descendants Mutable properties are also allowed and are called extras that are stored as key-value pairs in the database extras can be added and/or modified at any time A typical use case is to tag nodes with custom properties that can By automatically recording all data transformations through a process together with all the inputs it consumed the produced graph is in principle fully reproducible This of course depends on all relevant inputs being stored as well as the code that was ran by the process The actual source code of process functions is stored by AiiDA in the repository; for all other processes the code is referenced indirectly by storing both the version of AiiDA and of the relevant plugin in the attributes of the process node The source code of external simulation software is not directly stored although AiiDA provides the user with the possibility to store metadata such as the version of the software or the libraries and parameters used for compilation The inclusion of this information is not enforced as it is impossible to validate and it unnecessarily complicates the interface for those users who do not require this level of reproducibility The obvious solution to improve the provenance of data produced by external codes is containerisation and development is ongoing to provide integrated support for containerised codes in AiiDA Tracking all data transformations in a provenance graph provides another benefit besides enabling reproducibility The entire provenance graph can serve to implement a “caching” mechanism: if one considers the execution of a process that already has been performed before with identical inputs we already know what the outputs are going to be as well and so we can simply take those from the previously executed process instead avoiding incurring the computational cost once more This caching mechanism is implemented in AiiDA 1.0 and is explained in detail in the section “Caching” (a) Schematic of an AiiDA graph that could result from a materials science simulation: as described by the labels a Density Functional Theory self-consistent field (SCF) calculation and a geometry relaxation of a crystal structure and a calculation of the “distance” between the initial and final structure Orange squares represent nodes of type CalculationNode circles represent Data nodes: blue for crystal structures (of type StructureData) and green for nodes of type Dict (dictionaries of key–value pairs with input parameters or parsed results) (b) Representation of a graph query searching a StructureData node that was an input of a CalculationNode that created a Dict node as output Labels on the right represent the filter on the node type applied while querying (c) The four subgraphs that match the query embedded in the entire provenance graph where the matching nodes and links are colored in red and highlighted by a surrounding border The reason for the existence of two ORM backend implementations (Django and SQLAlchemy) is mostly historical The original implementation used only Django and as a result AiiDA’s API was tightly coupled to this library When the query builder was first introduced interaction with the database was implemented instead via SQLAlchemy as it provided a richer feature set allowing for more general queries Since SQLAlchemy at the time already provided support for JSONB (unlike Django) it was also used as an alternative ORM backend implementation to benefit from the significant improvements in database performance (see “Performance”) extensive work was performed to decouple the backend ORM from Django-specific constructs and to create a new layer of backend-independent AiiDA frontend classes (those directly exposed to users to interact with nodes) all functionalities of AiiDA (command line tools import/export functionality,…) were critically revised and updated so as not to rely anymore on backend-specific logic but to use general backend-independent interfaces instead in the current version of AiiDA the user interface does not depend anymore on the chosen backend implementing new ORM backends is now greatly streamlined and simplified Django also started supporting JSONB recently and we have updated the Django interface in AiiDA to use JSONB fields for attributes and extras instead of our original solution based on entity-attribute-value tables increasing database performance also for the Django backend (see “Performance”) The query builder is the tool of choice for querying data directly via the Python interface which in turn is the preferred approach when one has direct access to the machine running AiiDA data needs to be made available to users without full access to the machine a solution is required that can serve the data in a secure way such a solution should not just be able to serve the database contents as a whole but it should provide the necessary functionality to query for specific data this is translated into a database query using AiiDA’s query builder The results of the query are then mapped to the format defined by the REST API and serialised into a JSON response that is returned to the web client Results are paginated to facilitate downloads of large amounts of data without overloading the server In addition to endpoints common to all node types additional endpoints are available that provide functionality specific to only certain node subtypes it is possible to directly obtain raw inputs and outputs of a calculation or to download the content of data nodes in a specific format other than AiiDA’s internal representation the custom EAV implementation for node attributes has been replaced with the native JSONB provided by PostgreSQL which yields significant improvements in both storage cost and query efficiency Comparison in a log scale of the space requirements and time to solution when querying data with the two AiiDA ORM backends (a) Space needed to store 10000 structure data objects as raw text files using the existing EAV-based schema and the new JSON-based schema The reduced space requirements of the JSON-based schema with respect to the raw text files are due to The JSONB schema reduces the required space by a factor of 1.5 compared to the raw file size and a factor of 25 compared to the EAV-based schema (b) Time for three different queries that return attributes of different size for the same set of nodes meaning that the database caches are emptied before each query We indicate separately the database query time (SQL time) and the total query time which includes also the construction of the Python objects in memory The total query time of the site attributes in the JSONB format is 75 times smaller compared to the equivalent query in the EAV format The SQL time for the same query is roughly 6.5 times smaller for the JSONB version of SQL query compared to the EAV version of the query only a part of the increase in query efficiency thanks to the JSONB schema Using the JSONB-based format also carries significant speed benefits These mainly come from the more compact JSONB-based schema with respect to the EAV schema This results in (a) less transferred data from the database to AiiDA and (b) a reduced cost of deserialising the raw query result into Python objects the total query time of the site attributes in the JSONB format is 75 times smaller than the equivalent query in the EAV format The increased final speedup at the Python level is due to the fact that in the EAV based schema there is the overhead of serialising the attributes at the Python level which is largely avoided in a JSONB-based schema when querying the provenance graph one is only interested in the neighbours directly adjacent to a certain node some use cases require to traverse the graph taking multiple hops in the data provenance to find a specific ancestor or descendant of a given node To make the queries for ancestors and descendants at arbitrary distance as efficient as possible early versions of AiiDA computed and stored the transitive closure (TC) of the graph (i.e. the list of all available paths between any pair of nodes) in a separate database table Storing these paths in a dedicated database table with appropriate indexes allowed AiiDA to query for ancestors and descendants with time complexity 𝒪(1)in dependent of the graph topology and the number of hops To compare the performance of the explicit and lazy implementations of the TC we performed benchmarks on multiple graphs with topologies comparable to typical AiiDA provenance graphs Each graph consists of N binary trees with a depth and breadth (the number of downward branches and the number of outward going edges from each vertex The benchmark records the total time it takes to query for all descendants of 50 top-level nodes using either the explicit TC table (TC-TAB) or the on-the-fly TC (TC-OTF) Figure 3(c) clearly shows that in both cases the number of trees does not affect the query efficiency as the depth and breadth of the graph increases the topology of the graph has little impact on the query time Note that this holds for these particular topologies which match that of typical AiiDA provenance graphs but is not necessarily the case for more complex graph topologies We deem this increased cost more than acceptable given the considerable savings in storage space provided by the TC-OTF the performance independence from the graph topology and the faster storage of new links all recent versions of AiiDA implement only the TC-OTF Process submission and completion rates for the old and new engine (a) Number of submitted (solid lines) and completed (dashed lines) processes over time for the new engine (both with optimised parameters and with artificial constraints The submission of the old engine is slightly faster but despite this the completion rate of the new engine is clearly higher (b) Number of completed processes for the old (dashed lines) and new (solid lines) engine The polling-based nature of the old engine is clearly reflected in the stepwise behaviour of the completion rate with processes being finalised in batches indicating processes being executed in a continuous fashion Figure 8(a) shows that the submission rate of the old engine is slightly faster compared to the new engine because the procedure was significantly simpler with no communication with remote daemon workers the total completion time of the new engine (even in the constrained configuration) is shorter with the optimised new engine completing all processes three times faster than the old one in this simple example for the old engine all work chains complete towards the end of the time window at roughly the same time in a few discontinuous jumps because of the polling-based architecture the completion rate of the event-based engine is much smoother (beside being faster in general) because of the continuous operating character of the new engine with processes managed concurrently and executed immediately without waiting for the next polling interval The concurrency of the new daemon is highlighted even more in Fig. 8(b) where we compare the completion time for the new (optimised) daemon and old one showing independently the completion for the top work chain and each of the two subprocesses The reason of the large delay in the old engine is because even though the workflow only runs two subprocesses the internal logic consists of multiple steps where only one is processed per polling interval the new engine executes all workflow steps in quick succession without interruption We stress that the efficiency improvements of the new engine are even larger in real high-throughput situations, since the daemon is never idle between polling intervals. Most importantly, the new daemon is scalable and the number of daemon workers can be increased dynamically to distribute heavy work loads. This effect is made visible in Fig. 8(a) where the optimised new engine (with 12 workers and without connection delay) completes all processes in half the time required by the constrained one The effective throughput of the new engine for this experiment amounts to roughly 35000 processes per hour Due to the scalable design of the new engine this rate can be easily increased by running more daemon runners on a more powerful machine The storing of complete data provenance as described in “The Provenance Model” does not only guarantee the reproducibility of results it can also reduce the unnecessary repetition of calculations If the engine is asked to launch a calculation it can first check in the database if a calculation with the exact same inputs has already been performed the engine can simply reuse the outputs of the completed calculation saving computational resources This mechanism is referred to as caching in AiiDA and users can activate it for all calculation types or only for specific ones To rapidly find identical calculations in the database, one needs an efficient method to determine whether two nodes are equivalent. For this purpose, AiiDA uses the concept of hashing, where the whole content of a node is mapped onto a single short hexadecimal string. In AiiDA we employ the cryptographic BLAKE2b algorithm (blake2.net) which has a relatively low computational cost combined with an overwhelmingly unlikely probability of hash collisions The latter property means that any two nodes with the same hash can be assumed to be identical The content of a node that is included in the computation of its hash consists of the immutable node attributes and the file repository contents for a calculation node the hashes of all its inputs are also included such that looking for calculations with identical inputs can be done merely by looking at the hash of the calculation itself As soon as a node is stored and it becomes immutable its hash is computed and stored as a node property When the engine is asked to launch a new calculation it first computes its hash and searches the database for an existing node with the same hash If an identical calculation is found and caching is enabled the engine simply clones the output nodes of the existing calculation and links them to the new calculation This saves valuable computational resources and results in the same provenance graph as if the calculation had actually been run specific extra properties are added to indicate which calculation was used as the cache source making it possible to identify cached calculations (mostly for debugging purposes) The concept of caching is especially powerful when developing and running complex workflows consisting of many calculations the workflow that launched it fails as well because it was due to a bug in the workflow) the workflow can be fixed and simply rerun from scratch: thanks to the caching mechanism it will effectively continue from where it previously failed without repeating successful calculations The AiiDA ontology and provenance graph are designed to be employed in any field of computational science and therefore they are intentionally domain agnostic To enable users to extend core functionalities to suit the needs of a specific discipline AiiDA provides a flexible plugin system to add custom data types to interface external simulation codes with specific input generators and parsers These extensions are registered upon installation through entry points as explained in “Architecture Overview” which allows them to be developed and installed completely independently of the AiiDA code base AiiDA provides an online registry (see “Registry”) where plugin packages can be registered The plugin system builds on top of the setuptools project (setuptools.readthedocs.io) currently the de-facto standard tool for bundling and installing Python packages Setuptools provides a feature called “entry points” which are handles to specific Python resources (e.g. A Python package can define these entry points (categorised in entry point groups) such that the corresponding resources are registered and become automatically discoverable and usable by any other package AiiDA leverages the entry point system by defining several groups specific to the type of resources that a plugin can extend for example aiida.data and aiida.workflows for new data types and workflows respectively (ten groups are currently defined transport protocols to connect to remote computers When AiiDA plugin packages register plugins in the appropriate entry point groups AiiDA automatically discovers them and makes the functionality available to users Plugin packages are encouraged to namespace their entry points by prefixing them with the package name to avoid overlap with entry points of other packages Installing a plugin package can be performed with a single command of the pip (pypi.org/project/pip) Python package manager if the package is published on PyPI (pypi.org) Local or private packages can be installed just as easily and they can also register plugin entry points giving developers full freedom on how to maintain and distribute their plugin packages The AiiDA plugin registry (aiidateam.github.io/aiida-registry/) is an online resource with a list of all known plugin packages This centralised overview makes plugins easily discoverable by users of the AiiDA community and encourages code sharing and reuse Authors can register their plugin packages through a pull request to the registry repository providing minimal information like package name links to the code repository and documentation as well as a URI pointing to a JSON file maintained by the plugin developers The latter contains additional information in setuptools format such as the name and description of the project the authors list and the entry points that are provided Based on the information provided by the registered packages the registry website is automatically built through continuous deployment The plugin system in combination with the registry provides a powerful and effective tool to allow users and developers to easily create and share extensions of AiiDA’s core functionality an organisation that promotes open science and open research data each code commit triggers the running of a suite of over 1000 unit and integration tests that verify that the changes do not break existing functionality These measures are crucially important to guarantee the longevity of the project as the codebase and number of contributors keep growing The GitHub repository not only serves as a code hosting platform interaction and collaboration between all contributors through its issue and milestone tracker With data longevity we refer here to the possibility of accessing data produced with earlier code versions from newer versions This is an important aspect of any data infrastructure and it is particularly critical to AiiDA AiiDA aims at improving the reproducibility of computational science simulations and thus data should be accessible also years after it has been produced AiiDA also focuses on being performant for high-throughput workloads (see “Performance”) which often requires changes to existing data layouts AiiDA can automatically migrate data across code versions without the need of human intervention Particular care has been devoted to implement robust database schema and data migrations for both database backends (Django and SQLAlchemy see “Database Abstraction and Querying Language”) with 42 migrations per backend implemented in v1.0 These migrations ensure that early AiiDA users can seamlessly migrate their databases generated years ago to the most recent version without losing any of their data or provenance to guarantee that all migrations are correct and thus avoid the potentially irreversible corruption of user data the integrity of each migration is verified by automated individual unit tests as described previously While the development and maintenance effort for these migrations is significant they are essential for data longevity and with that by giving them confidence that their data will be accessible in the future Similar migrations and the corresponding tests have been implemented for AiiDA archive files that contain exported (parts of) AiiDA databases Since these archive files are not concerned with the database schema but merely with the data itself but instead separate migrations in Python had to be developed A final contribution to AiiDA’s data longevity is the compatibility of AiiDA 1.0 with both Python 2 and Python 3 Despite Python 2 reaching its end-of-life in January 2020 AiiDA 1.0 supported this version for another 6 months thereby providing a grace period for users and developers to upgrade their code and plugins to Python 3 In addition to the aspects outlined earlier, we actively pursued various activities to strengthen the user and developer community of AiiDA. Notably, we organised a significant number of events (see aiida.net/events) schools and workshops over the 2017–2020 period introducing the code and the concepts of provenance and reproducible workflows as well as advanced developers (with yearly coding weeks and events aiming to provide direct support to AiiDA plugin developers) Discussions on each suggested AEP are facilitated by the GitHub platform and remain available also after approval allowing to go back and review the reasoning that justified specific design decisions AEPs provide a way to extend the discussions on the future roadmap of the code to all interested users high-throughput and scalable infrastructure for computational science with a strong focus on automated data provenance We have highlighted the new design of AiiDA 1.0 that makes it scalable to exascale high-throughput computational loads AiiDA 1.0 can easily sustain tens of thousands of processes per hour and dispatch them on a broad range of computing resources from local computers to large high-performance supercomputers Key to achieving this goal has been the redesign of the workflow engine from a polling-based to an event-based paradigm The engine can be scaled on demand to an arbitrary number of workers that operate independently where communication with and among them is made possible by the RabbitMQ message broker the design and implementation of the provenance graph have been significantly improved The concept of workflows is now fully integrated into the provenance graph including now also the logical steps in the data provenance The implementation of the provenance graph has been optimised and made more efficient by migrating the storage of node properties to native JSONB column types and by computing the transitive closure on the fly The QueryBuilder is a powerful tool that allows users to inspect their provenance graph and extract information without having to be able to write SQL queries and that provides a simple Python syntax that is independent of the ORM backend used for the implementation The REST API provides yet another way of extracting data from an AiiDA provenance graph which is especially useful when direct access to the machine running the instance is not available despite the profound improvements and changes in the code compared to early versions existing data and their provenance can be automatically migrated and are therefore guaranteed to remain compatible with the present version of AiiDA The source code of AiiDA is released under the MIT open-source license and is made available on GitHub (github.com/aiidateam/aiida-core). It is also distributed as an installable package through the Python Package Index (pypi.org/project/aiida-core) Ioannidis, J. P. A. et al. Repeatability of published microarray gene expression analyses. Nat. Genet. 41, 149–155, https://doi.org/10.1038/ng.295 (2009) Peng, R. D. Reproducible research in computational science. Sci. 334, 1226–1227, https://doi.org/10.1126/science.1213847 (2011) Stoddart, C. Is there a reproducibility crisis in science? Nat., https://doi.org/10.1038/d41586-019-00067-3 (2016) Allison, D. B., Brown, A. W., George, B. J. & Kaiser, K. A. Reproducibility: A tragedy of errors. Nat. 530, 27–29, https://doi.org/10.1038/530027a (2016) Wilkinson, M. D. et al. The FAIR guiding principles for scientific data management and stewardship. Sci. Data 3, https://doi.org/10.1038/sdata.2016.18 (2016) Goble, C. et al. FAIR computational workflows. Data Intell. 2, 108–121, https://doi.org/10.1162/dint_a_00033 (2020) Pizzi, G., Cepellotti, A., Sabatini, R., Marzari, N. & Kozinsky, B. AiiDA: automated interactive infrastructure and database for computational science. Comput. Mater. Sci. 111, 218–230, https://doi.org/10.1016/j.commatsci.2015.09.013 (2016) Jain, A. et al. FireWorks: a dynamic workflow system designed for high-throughput applications. Concurr. Comput. Pract. Exp. 27, 5037–5059, https://doi.org/10.1002/cpe.3505 (2015) Curtarolo, S. et al. AFLOW: An automatic framework for high-throughput materials discovery. Comput. Mater. Sci. 58, 218–226, https://doi.org/10.1016/j.commatsci.2012.02.005 (2012) Larsen, A. H. et al. The atomic simulation environment—a python library for working with atoms. J. Physics: Condens. Matter 29, 273002, https://doi.org/10.1088/1361-648x/aa680e (2017) Maffioletti, S. & Murri, R. GC3pie: A python framework for high-throughput computing. In Proceedings of EGI Community Forum 2012/EMI Second Technical Conference — PoS(EGICF12-EMITC2), https://doi.org/10.22323/1.162.0143 (Sissa Medialab Adorf, C. S., Dodd, P. M., Ramasubramani, V. & Glotzer, S. C. Simple data and workflow management with the signac framework. Comput. Mater. Sci. 146, 220–229, https://doi.org/10.1016/j.commatsci.2018.01.035 (2018) Babuji, Y. et al. Parsl. In Proceedings of the 28th International Symposium on High-Performance Parallel and Distributed Computing - HPDC 2019, https://doi.org/10.1145/3307681.3325400 (ACM Press Mounet, N. et al. Two-dimensional materials from high-throughput computational exfoliation of experimentally known compounds. Nat. Nanotechnol. 13, 246–252, https://doi.org/10.1038/s41565-017-0035-5 (2018) Kahle, L., Marcolongo, A. & Marzari, N. High-throughput computational screening for solid-state Li-ion conductors. Energy & Environ. Sci. 13, 928–948, https://doi.org/10.1039/c9ee02457c (2020) Mercado, R. et al. In silico design of 2d and 3d covalent organic frameworks for methane storage applications. Chem. Mater. 30, 5069–5086, https://doi.org/10.1021/acs.chemmater.8b01425 (2018) Prandini, G., Marrazzo, A., Castelli, I. E., Mounet, N. & Marzari, N. Precision and efficiency in solid-state pseudopotential calculations. npj Comput. Mater. 4, https://doi.org/10.1038/s41524-018-0127-2 (2018) Vitale, V. et al. Automated high-throughput Wannierisation. npj. Comput. Mater. 6, 66, https://doi.org/10.1038/s41524-020-0312-y (2020) Talirz, L. et al. Materials cloud, a platform for open computational science. Sci. Data. https://doi.org/10.1038/s41597-020-00637-5 (2020) Uhrin, M., Huber, S. P., Yu, J., Marzari, N. & Pizzi, G. Workflows in AiiDA: Engineering a high-throughput, event-based engine for robust and modular computational workflows. Preprint at https://arxiv.org/abs/2007.10312 (2020) Giannozzi, P. et al. QUANTUM ESPRESSO: a modular and open-source software project for quantum simulations of materials. J. Physics: Condens. Matter 21, 395502, https://doi.org/10.1088/0953-8984/21/39/395502 (2009) Kresse, G. & Furthmüller, J. Efficient iterative schemes for ab initio total-energy calculations using a plane-wave basis set. Phys. Rev. B 54, 11169–11186, https://doi.org/10.1103/physrevb.54.11169 (1996) Ullmann, J. R. An algorithm for subgraph isomorphism. J. ACM (JACM) 23, 31–42, https://doi.org/10.1145/321921.321925 (1976) Gražulis, S. et al. Crystallography open database (COD): an open-access collection of crystal structures and platform for world-wide collaboration. Nucleic Acids Res. 40, D420–D427, https://doi.org/10.1093/nar/gkr900 (2011) Gražulis, S. et al. Launching the theoretical crystallography open database. Acta Crystallogr. Sect. A Foundations Adv. 70, C1736–C1736, https://doi.org/10.1107/s2053273314082631 (2014) Blokhin, E. & Villars, P. The PAULING FILE project and materials platform for data science: From big data toward materials genome. In Handbook of Materials Modeling, 1–26, https://doi.org/10.1007/978-3-319-42913-7_62-1 (Springer International Publishing Jain, A. et al. Commentary: The materials project: A materials genome approach to accelerating materials innovation. APL Mater. 1, 011002, https://doi.org/10.1063/1.4812323 (2013) Draxl, C. & Scheffler, M. The NOMAD laboratory: from data sharing to artificial intelligence. J. Physics: Mater. 2, 036001, https://doi.org/10.1088/2515-7639/ab13bb (2019) Kirklin, S. et al. The open quantum materials database (OQMD): assessing the accuracy of DFT formation energies. npj Comput. Mater. 1, https://doi.org/10.1038/npjcompumats.2015.10 (2015) Continuous Integration: Improving Software Quality and Reducing Risk (The Addison-Wesley Signature Series) (Addison-Wesley Professional Ong, S. P. et al. Python materials genomics (pymatgen): A robust, open-source python library for materials analysis. Comput. Mater. Sci. 68, 314–319, https://doi.org/10.1016/j.commatsci.2012.10.028 (2013) Togo, A. & Tanaka, I. Spglib: a software library for crystal symmetry search. Preprint at https://arxiv.org/abs/1808.01590 (2018) Hinuma, Y., Pizzi, G., Kumagai, Y., Oba, F. & Tanaka, I. Band structure diagram paths based on crystallography. Comput. Mater. Sci. 128, 140–184, https://doi.org/10.1016/j.commatsci.2016.10.015 (2017) Belsky, A., Hellenbrandt, M., Karen, V. L. & Luksch, P. New developments in the inorganic crystal structure database (ICSD): accessibility in support of materials research and design. Acta Crystallogr. Sect. B Struct. Sci. 58, 364–369, https://doi.org/10.1107/s0108768102006948 (2002) Merkys, A. et al. A posteriori metadata from automated provenance tracking: integration of AiiDA and TCOD. J. Cheminformatics 9, 56–67, https://doi.org/10.1186/s13321-017-0242-y (2017) Gröning, O. et al. Engineering of robust topological quantum phases in graphene nanoribbons. Nat. 560, 209–213, https://doi.org/10.1038/s41586-018-0375-9 (2018) Atambo, M. O. et al. Electronic and optical properties of doped TiO2 by many-body perturbation theory. Phys. Rev. Mater. 3, https://doi.org/10.1103/physrevmaterials.3.045401 (2019) Wang, S. et al. On-surface synthesis and characterization of individual polyacetylene chains. Nat. Chem. 11, 924–930, https://doi.org/10.1038/s41557-019-0316-8 (2019) Mishra, S. et al. Topological frustration induces unconventional magnetism in a nanographene. Nat. Nanotechnol. 15, 22–28, https://doi.org/10.1038/s41565-019-0577-9 (2019) Li, W. et al. Interface engineered room-temperature ferromagnetic insulating state in ultrathin manganite films. Adv. Sci. 7, 1901606, https://doi.org/10.1002/advs.201901606 (2019) Abbott, D. F. et al. Design and synthesis of Ir/Ru pyrochlore catalysts for the oxygen evolution reaction based on their bulk thermodynamic properties. ACS Appl. Mater. & Interfaces 11, 37748–37760, https://doi.org/10.1021/acsami.9b13220 (2019) Mateo, L. M. et al. On-surface synthesis and characterization of triply fused porphyrin–graphene nanoribbon hybrids. Angewandte Chemie Int. Ed. 59, 1334–1339, https://doi.org/10.1002/anie.201913024 (2020) Stamminger, A. R., Ziebarth, B., Mrovec, M., Hammerschmidt, T. & Drautz, R. Fast diffusion mechanism in Li4P2S6 via a concerted process of interstitial li ions. RSC Adv. 10, 10715–10722, https://doi.org/10.1039/d0ra00932f (2020) Mohr, S. et al. Accurate and efficient linear scaling DFT calculations with universal applicability. Phys. Chem. Chem. Phys. 17, 31360–31370, https://doi.org/10.1039/c5cp00437c (2015) Clark, S. J. et al. First principles methods using CASTEP. Zeitschrift für Kristallographie - Cryst. Mater. 220, https://doi.org/10.1524/zkri.220.5.567.65075 (2005) Hutter, J., Iannuzzi, M., Schiffmann, F. & VandeVondele, J. cp2k: atomistic simulations of condensed matter systems. Wiley Interdiscip. Rev. Comput. Mol. Sci. 4, 15–25, https://doi.org/10.1002/wcms.1159 (2013) Dovesi, R. et al. Quantum-mechanical condensed matter simulations with CRYSTAL. Wiley Interdiscip. Rev. Comput. Mol. Sci. 8, e1360, https://doi.org/10.1002/wcms.1360 (2018) Gale, J. D. GULP: A computer program for the symmetry-adapted simulation of solids. J. Chem. Soc. Faraday Transactions 93, 629–637, https://doi.org/10.1039/a606455h (1997) Togo, A. & Tanaka, I. First principles phonon calculations in materials science. Scripta Materialia 108, 1–5, https://doi.org/10.1016/j.scriptamat.2015.07.021 (2015) Dubbeldam, D., Calero, S., Ellis, D. E. & Snurr, R. Q. RASPA: molecular simulation software for adsorption and diffusion in flexible nanoporous materials. Mol. Simul. 42, 81–101, https://doi.org/10.1080/08927022.2015.1010082 (2015) Soler, J. M. et al. The SIESTA method for ab initio order-n materials simulation. J. Physics: Condens. Matter 14, 2745–2779, https://doi.org/10.1088/0953-8984/14/11/302 (2002) Pizzi, G. et al. Wannier90 as a community code: new features and applications. J. Physics: Condens. Matter 32, 165902, https://doi.org/10.1088/1361-648x/ab51ff (2020) Sangalli, D. et al. Many-body perturbation theory calculations using the yambo code. J. Physics: Condens. Matter 31, 325902, https://doi.org/10.1088/1361-648x/ab15d0 (2019) Mounet, N. et al. Two-dimensional materials from high-throughput computational exfoliation of experimentally known compounds. Materials Cloud https://doi.org/10.24435/materialscloud:2017.0008/v3 (2018) Huber, S. P. et al. AiiDA 1.0, a scalable computational infrastructure for automated reproducible workflows and data provenance. Materials Cloud https://doi.org/10.24435/materialscloud:2020.0027/V1 (2020) Download references This work is supported by the MARVEL National Centre of Competence in Research funded by the Swiss National Science Foundation (grant agreement ID 51NF40-182892) the European Centre of Excellence MaX “Materials design at the Exascale” (grant no 824143) and by the Swiss Platform for Advanced Scientific Computing (PASC) Additional support was provided by the “MaGic” project of the European Research Council (grant agreement ID 666983) the swissuniversities P-5 “Materials Cloud” project (grant agreement ID 182-008) the “MARKETPLACE” H2020 project (grant agreement ID 760173) the “INTERSECT” H2020 project (grant agreement ID 814487) the “NFFA” H2020 project (grant agreement ID 654360) and the “EMMC” H2020 project (grant agreement ID 723867) We would like to thank the following people for code contributions and useful discussions and suggestions: Oscar D These authors contributed equally: Sebastiaan P National Centre for Computational Design and Discovery of Novel Materials (MARVEL) Theory and Simulation of Materials (THEOS) Faculté des Sciences et Techniques de l’Ingénieur Institut des Sciences et Ingénierie Chimiques École Polytechnique Fédérale de Lausanne (EPFL) Vilnius University Institute of Biotechnology Paulson School of Engineering and Applied Sciences Research and Technology Center North America designed the use of process functions to track the provenance of Python functions formulated the extension of the provenance graph definition to include link types designed the current provenance graph formalising the two provenance levels and implemented it with contributions in both design and implementation by L.T. developed an initial scheme for JSONB node attributes and their queries via the SQLAlchemy ORM oversaw and implemented the abstraction of the backend ORM and the addition of SQLAlchemy support implemented the use of JSONB fields also with the Django backend designed the front-end/back-end ORM separation and S.P.H. implemented the on-the-fly transitive closure designed the graph traversal tool and implemented it with F.F.R designed and implemented the plugin system redesigned the command line tool and implemented it with S.P.H. suggested the idea of caching of calculations designed and implemented the caching mechanism improved the export and import functionality designed and implemented the tools to import crystal structures from external databases and to export them to external databases have setup and contributed to the AiiDA Enhancement Proposal (AEP) system are or have been part of the AiiDA core developers team that maintains the software integrated various external libraries for data transformation and implemented many command line utilities to export and visualise data contributed to the various tutorials that have been organised All authors have read and approved the final version of the manuscript The authors declare no competing interests Publisher’s note Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations Download citation DOI: https://doi.org/10.1038/s41597-020-00638-4 Anyone you share the following link with will be able to read this content: Sorry, a shareable link is not currently available for this article. Sign up for the Nature Briefing: Careers newsletter — what matters in careers research, free to your inbox weekly. Mario Adorf is known as one of the great veteran character actors of European cinema he became particularly famous as the murderer of Winnetou's father and sister in the 1963 western "Apache Gold," based on Karl May's bestselling novels Adorf also managed to overcome his bad guy image by starring in Wolfgang Staudte's comedy "Ganovenehre" ("A Scoundrel's Honor") from 1966 Mario Adorf also made it as a gunslinger in Italian films starred in Spaghetti Westerns such as Sergio Corbucci's "The Specialists" (1969) The actor who had almost always played villains was then discovered by New German Film directors He worked with star directors like Rainer Werner Fassbinder and Volker Schlöndorff Mario Adorf co-starred in Fassbinder's "Lola" alongside Armin Müller-Stahl Most unforgettable to many fans is Mario Adorf's performance in the film adaptation of the Günter Grass novel "The Tin Drum" ("Die Blechtrommel") Mario Adorf remained active as an actor through his 80s he starred in "Der letzte Mentsch," a 2013 road movie about an elderly man searching for his Jewish roots The Nürburgring 24 Hours gets underway at 15:30 on Saturday Here you can see the webcast of the BMW Group Press Conference at the Auto Shanghai 2025 who came close to death multiple times in the impenetrable oblivion and the seemingly infinite vastness of the Peruvian jungles Inspired by the actual story of a rubber baron named Carlos Fermín Fitzcarrald Herzog wanted to make an epic about the contours of human ambition and its inherent absurdity Fitzcarraldo is a complex commentary on colonisation and exploitation revolving around the wild dreams of a madman who wanted to manually pull a giant steamship across a hill the German auteur himself became a Fitzcarraldo-like figure trying to achieve the impossible Although Fitzcarraldo is always going to be associated with Klaus Kinski’s insane performance, Herzog had initially cast American icon Jason Robards as Fitzcarraldo. In addition, Mick Jagger was supposed to play the role of Fitzcarraldo’s assistant while Mario Adorf was going to star as the ship’s captain innumerable hitches to the production ensured that none of them ended up in the final product Herzog called Robards and Adorf “cowards” for being too afraid to shoot in the jungle whose real problem stems from their appalling inner emptiness had refused to get into the car with [George] Sluizer terrified that the strikers might shoot at them To explain to them that we had already put forty people onto the ship that Mick Jagger had crisscrossed the city in his car shuttling people and was already at the shooting site it was Robards’ lack of courage that Herzog mentions throughout the journal entries that he penned during the arduous production process both Robards and Adorf had drawn up their wills before coming to Peru because they were afraid of the situation in the jungle the All the President’s Men actor eventually abandoned the production and said that he would never return “We were amazed at how terrified Robards must be of the jungle,” Herzog wrote in one of the entries elaborating in others that the American star routinely complained about the state of the camp they had built in the jungle Robards also used his lawyers to create unnecessary delays in the process and he was unfairly critical of the Peruvian staff as well as the medical facilities Herzog revealed: “I recall Robards’s arrogant disrespect for everything Peruvian; he demanded American doctors considering even our French-educated doctor inferior.” Due to these differences Herzog had to do the unthinkable: partner up with the infamously volatile Kinski who brought his own share of tantrums to the making of the film his insanity translated perfectly to the role of Fitzcarraldo which is undoubtedly among the greatest performances of all time Watch an excerpt from the making of Fitzcarraldo where Herzog talks about the intimidating jungle As announced on Friday last week Neptune Energy acquired stakes in three oil fields and three gas fields from Wintershall Dea in the area known as the Lower Saxony Basin This prolific basin is characterised by multiple reservoir units varying from Carboniferous through to Lower Cretaceous sandstones and Zechstein carbonates The Lower Saxony Basin has a long exploration history a blow-out near the village of Bentheim (south of the fields shown on the map) first indicated that the Zechstein was gas bearing which must have ramped up prospecting since some of the fields in the current transaction  were discovered in the 1940’s The fields Neptune acquired a stake in are the Adorf Apeldorn and Ringe gas fields and the Adorf-Scheerhorn with the exception of the Georgsdorf oil field with the Apeldorn gas field located a little further to the northeast We assumed that the Adorf-Scheerhorn oil field mentioned in Neptune’s press release is the same as the Scheerhorn field as indicated on the map the Ringe gas field – which is probably close to the Ringe oil field – was only discovered in 2020 and is currently under development and a field poygon for this accumulation is not yet available Looking at the ultimate recoverable volumes and the cumulative production figures of these fields using the extensive Southern Permian Basin Atlas Appendix 3, it is apparent that the majority of them are close to the having produced the ultimate recoverable volume the Georgsdorf field (discovered in 1944) in Lower Cretaceous sands produced 127 MMbo until 2010 whilst the ultimate recoverable volume was down as 134 MMbo leaving little room for further production unless additional development opportunities have been flagged since Neptune states that the acquisition will add approximately 1,800 barrels of oil equivalent per day (boepd) to its production portfolio in Germany – an increase of around 10% The most well-known field in the area is the complex of Schoonebeek (NL) which is supposed to be the largest onshore oil field complex in western Europe with an initial ~725 MMbo recoverable as the names of the fields already suggest and is being produced by NAM from the Dutch side of the border whilst Wintershall operates the German accumulations Henk KombrinkHenk.Kombrink@geoexpro.com+44 77 8899 2374 Sales DirectorIngvild Ryggen CarstensSales Enquiries+47 974 69 090 It’s the most impressive ‘new’ movie we’ve seen this year: Robert Siodmak’s 1957 political thriller fictionalizes a true mass murder case in 1943 Berlin — one that a high-ranking Nazi wants to justify the extermination of ‘undesirables’ for the furtherance of Aryan white supremacy The snapshot of home-front Berlin is fascinating and also the depiction of a complacent public that goes along with official lies nobody fully believes the unjustly obscure show stars Claus Holm The illuminating audio commentary is by Imogen Sara Smith Do we only know about Nazi Germany through the movies  Impressions of this subject are often tapped to express our present-day political polarization especially for arguments that go nowhere: ‘Your people are worse than Nazis’ — ‘No Not that many films deliver genuine insights about Nazi Germany The Devil Strikes at Night (Nachts wenn der Teufel kam) floors us It was produced by the great Robert Siodmak who fled to Hollywood and became the most consistent director of films noir German audiences rejected many films that ‘dug up old wounds,’ yet flocked to this show and showered it with awards The Devil Strikes at Night grabs us right from the start. The movie was sold as a kind of update of Fritz Lang’s “M” and an eerie prologue prepares us for a horror film about a serial killer We instead get a complex picture of Berlin and Hamburg when the Allies were closing in Life goes on fairly normally amid the uncleared rubble The Devil Strikes at Night’s serial killer case becomes a springboard to examine suppressed truth and official lies in a very sick situation Men in uniforms are telling the civil authorities which criminals to prosecute ‘Looking the other way’ is a part of everyday life When Axel asks if an address number plate is missing from a building a man doesn’t answer directly: if he said the metal plate had been stolen he might be accused of spreading malicious rumors that Berlin has a problem with thieves The police admit that the parks don’t have park benches any more but nobody’s saying they’ve been stolen for firewood Homicide detective Kommissar Axel Kersten (Claus Holm) has just resumed his police job after being wounded at the Russian front. He initiates a credible, warm relationship with police clerk Helga Hornung (Annemarie Düringer, later of Veronika Voss) unreliable official news and the encroachment of Reich politics creates a nervous ‘Business As Usual’ attitude in the precinct A murder occurs during an air raid: a waitress (Monika John) is found strangled. Circumstantial evidence leads to the arrest of her lover Willi Keun, a Public Relations Officer (Werner Peters of The 1,000 Eyes of Dr. Mabuse) Keun’s extramarital affair is uncovered as well as the fact that he’s been pilfering rationed stores — details that will make prosecution all that easier Noting that the crime is only one of many in which the victim’s neck bones were crushed Axel concludes that Keun isn’t strong enough to be the killer Kersten’s smart investigation gets the attention of the high-ranking SS Gruppenführer Rossdorf (Hannes Messemer) but for the wrong reason: Rossdorf hopes that the guilty party will turn out to be a habitual criminal or better yet He wishes to use the case as political PR to legalize the ‘elimination’ of citizens judged mentally defective We already know who killed the waitress: a slow-witted It’s the first film role for the remarkable Adorf; his career never slowed from that point forward A simpleton who can’t tell the time or respond well to simple questions Bruno is like one of the human flotsam characters in Berlin Alexanderplatz and the ‘paragraph 51’ classification that tags him as mentally impaired Nobody in the neighborhood knows what Bruno does when not making deliveries He lives in a shed where he keeps souvenirs of 11 years of killings We even see evidence of possible child victims the honest nurse Anna Hohmann (Rose Schäfer) He says he ‘found’ a purse; to our surprise he meekly allows Anna to prod him into turning it in He walks right into the police station with her The childlike brute cooperates fully with the investigation and Axel determines that he isn’t lying when he describes murders going back a full decade: there is a long list of unsolved killings with the same modus operandi That’s when Gruppenführer Rossdorf steps in to pull the case from civilian police control He’s been looking for the right crime story with which to rally the public behind his ‘we can arrest and kill anybody’ legislation It’s all to curry favor with Adolf Hitler’s inner circle The Nazis want to back their ambitions with official Rossdorf begins cultivating Axel Kersten to be his personal police liaison It’s not important that Axel be a Nazi party member as nobody believes membership guarantees anything plying Axel with packets of scarce luxuries like coffee and soap But he also makes it known that if Axel causes trouble In one rather brilliant bit Rossdorf’s car is blocked on the road by a shepherd’s flock he frustratedly complains that ‘the public’ might resist the removal of their last legal protections: “How long will these damn sheep stall us?” A mold is taken of Bruno’s head in anticipation of putting him on display as a ‘scientific’ example of racial degeneration Rossdorf suddenly decides that publicizing the Lüdke case won’t serve his purposes: the public could instead fixate on the incompetence of the police for letting such a monster keep killing for so many years The case instead ‘disappears’ from the public record Axel Kersten won’t stop asking for Keun’s exoneration even after being coldly reprimanded: “Justice is that which will benefit the German people.”  In this place and time even a little idealism is hazardous to one’s survival Willi addresses an intensely patriotic group of giggling teenaged girls just returned from helping with a harvest Willi chats up the girls with lecherous ‘compliments’ as he hands out Nazi Party trinkets The Gruppenführer embodies the insidious nature of Nazi power Rossdorf is a skilled corporate planner ‘taking care of business’ in a ruthless organization A later film relevant to this point is Heinz Schirk’s 1984 The Wannsee Conference which uses an actual transcript to cover a single meeting in which Reinhard Heydrich lays out specifics for The Final Solution Mass murder is discussed as if it were an inventory issue in an industrial supply chain Siodmak’s film also alludes to SS depravity with a suggestion of secret orgies One of Axel’s meetings with Rossdorf is interrupted by a parade of debauched SS men with their guests and their fancy women laughing as they stumble to the bomb shelter inebriated woman oozes herself into Rossdorf’s embrace for a moment It’s an underplayed throwaway moment The existence of concentration camps is noted in just one scene Before his arrest Bruno makes a delivery to a woman named Frau Weinberger (Margaret Jahnen) the woman tells Bruno that she’s a Jew in hiding Frau Weinberger’s fugitive status is almost an open secret — even the building’s concierge seems to know what’s going on The impression given is that her neighbors won’t be able to ‘look the other way’ much longer More progressive is the sequence in which the police take Bruno to the forest to recreate one of his crimes Siodmak’s camera becomes subjective to show Bruno’s confused delirium His delight at being at the center of attention is expressed in handheld shots of him running ‘free’ through the woods For a few moments we’re inside Bruno’s mind A couple of blurring pans evoke the same disorienting quality of the final cemetery scene in The Good The Devil Strikes at Night is a mature and believable look at a society perverted by Fascism Axel appeals to a judge who is turning a blind eye to a gross miscarriage of justice It surely took years for the judge to sink to this point of utter legal depravity; he must placate the SS yet manages to calm the suddenly-too-gullible Axel The one scene is worth two hours of Stanley Kramer’s Judgment at Nuremberg: this judge is so deeply embedded in the Nazi hypocrisy that Axel hasn’t a chance The Devil Strikes at Night is so rewarding and insightful that its downbeat ending does not depress: the good Axel does not consider himself defeated. Some hope shines through, which is more than can be said for Masaki Kobayashi’s Japanese war epic The Human Condition I see something positive in Axel’s brief exchange with the good-hearted nurse Anna Even if he must ‘play Peter’ and deny that there ever was a Bruno Lüdke and he’s now free of  his illusions about Fascist authority With its Blu-ray of The Devil Strikes at Night Kino Classics appears to have tapped into a new supplier of European cinema the B&W show looks and sounds brand new The original photography mixes studio work with excellent locations — call the style ‘neorealism with a high technical polish.’ We’ve read for years about Nachts wenn der Teufel kam and are thrilled to be able to see it looking this good Now they were ready for movies revisiting traumatic episodes like ‘Operation Valkyrie.’ Smith contrasts Teufel with Helmut Käutner’s more radical exposé movie Black Gravel. She judges it to be more like American noirs that scratch at social failings — Joseph Losey’s The Lawless and Russell Rouse’s The Well Ms. Smith also relates some of the facts about the real Bruno Lüdke, whose story has been a political football ever since his arrest in 1943. There was no trial, so the evidence against him was never put in the public record. Some say that he was an innocent railroaded by the police. Lüdke’s Wikipedia Entry is one ‘citation needed’ flag after another the commentary ends with the weighty observation that The Devil Strikes at Night is more relevant than ever: our present-day politics is in a fix where objective truth must compete for attention with ‘alternative facts.’ Devil was nominated for an Oscar for Best Foreign Picture but lost to Fellini’s Nights of Cabiria One reason the show feels so refreshing is that it owes so little to American filmmaking — it’s not aimed for a U.S Robert Siodmak’s later career would taper off but here he’s at the top of his game venturing far afield of the noir style he mastered in Hollywood Note: also just released on Blu-ray is one of Siodmak’s last American films The cover illustration appears to be from a French poster that replaces an image of Bruno with a generic Nazi villain It doesn’t directly relate to the movie — no officer menaces a woman in that way For a movie with only a single on-screen murder We’re still awaiting improved encodings of postwar Germany’s Die Mörder sind unter uns (The Murderers are Among Us) and Der Verlorene (The Lost Man) directed by Peter Lorre — and who knows how many more gems are waiting for wider distribution Glenn Erickson left a small town for UCLA film school where his spooky student movie about a haunted window landed him a job on the CLOSE ENCOUNTERS effects crew He’s a writer and a film editor experienced in features But he’s most proud of finding the lost ending for a famous film noir Glenn is grateful for Trailers From Hell’s generous offer of a guest reviewing haven for CineSavant Your Ads Privacy ChoicesIMDb Fishing the Derby is no cruise down the Danube after walking into the weigh station with a bluefish that propelled him to the boat bluefish grand leader spot his wife Karen (a Willoughby from Edgartown) and their soon to be three-year-old daughter Analiesa live in Diemelsee-Adorf Edgartown’s longtime selectman and Daniel’s wife’s aunt Daniel thought he could be cagey when I reached him by telephone Daniel told me he caught his fish about 6:30 pm “on the east coast on a boat.” I asked who he was fishing with when he caught the blue “I don’t know if he wants me to tell you his name or whatever I need to talk to him first,” Daniel said I assured him the boat captain would not mind “You’re sure he won’t mind,” Daniel said coaching him on his answers in the background “Wasn’t it Margaret’s son,” I said “How do you know,” he said with a laugh it was Margaret’s son.” Karen laughed too “But I can still say I didn’t say the name.” Daniel said this is his third or fourth time fishing the Derby he answered precisely: “It’s the Derby.” and it’s competition,” he said Daniel was trolling when he caught the bluefish A quick glance at Derby records shows that it is the biggest blue to be weighed in since 2000 Most of the winning buefish caught in the past 10 years have averaged about 16 pounds Daniel said the reaction at the Derby weigh station was overwhelming I couldn’t pick up everything,” he said “I realized it this morning [Monday] when I saw my name on the board in first place.” Daniel and his family must leave on October 12 If his fish makes it to the awards ceremony on October 20 Tony Serpa will be his stand-in when it comes time to draw for the new truck Bait fishing at night is best done with a friend Easy conversation helps pass the time while you wait for a Derby-winning fish to hit the bait my regular fishing partner Tom Robinson was unable to fish So I invited my wife Norma to spend a few hours on the South Shore while I fished Not that Norma is unwilling to spend time with me She is just wary of going anywhere with me when I have a fishing rod in hand Promised short beach drives have turned into long and what were supposed to be brief excursions have turned into hunger-filled outings We arrived just as the sun was setting in the west I pounded in a sand spike and set my surf rod in it The mechanics of surf fishing were new to Norma I turned on a small glow light attached near the top of the 11-foot surf rod an old fiberglass Fenwick that has served me well when the job requires heaving a lead pyramid sinker and hunk of bait I cast my bait and sat in one of two low chairs that are an integral part of our surf fishing kit “So this is what you do?” Norma said as though there should be more effort on my part We sat and chatted as the sky turned crimson “You’ll know when it is a fish.” After a short tussle I slid a striped bass My circle hook did its job and was firmly embedded in the jaw Norma agreed that it had been a pretty evening Strange events are not unusual in the Derby Jonathan Searle of Edgartown was fishing with his young daughter Emma off Chappy near the green can that marks Tom’s Shoal and he was making one more pass to look for a bluefish “A huge splash caught my eye about 20 yards from the can,” Jonathan said “I called Emma’s attention to it An 80 to 100-pound bluefin came sailing out of the water A spectacular sight at about 50 yards away.” It scared his daughter but also explained the lack of bluefish Many Island fishermen will remember when a shore fisherman caught a yellowfin tuna on a popping plug from Chappy The Derby will hold a kayak tournament this weekend The winner gets a loaded sea kayak from sponsor BassYaks The MV Times comment policy requires first and last name for all comments Richard ForresterPublished: Invalid Date, CONOR MCGREGOR has his fair share of admirers but none more so than Germany's Maurice Adorf. An MMA fighter himself, Adorf has the tattoos, beard and arrogance... now he just needs the results. Nicknamed Mild Mac, the lightweight fighter is new to the game and has won his opening two scraps. And it's obvious where he gets his motivation and inspiration. Before even mentioning his mannerisms inside the octagon, his appearance to Notorious is uncanny. Like McGregor, Adorf has a piece of ink work on his chest with others down his left arm. Both fighters don't have any tattoos on their right arm. The duo even have the same haircut, a short back and side look with the trademark facial hair to go with it. Even Adorf's Instagram page pays tribute to McGregor. He has posted images of the Irishman at his weigh-in and even a picture of the pair together ahead of McGregor's scrap with Alvarez. Inside the octagon his moves are so similar to his idol that it's almost spooky. he has the exact same walk-in and same warm-up routine he then appears to wipe his feet on the ground - exactly like McGregor Against an opponent even his striking is remarkably similar It was so alike that journalist Ariel Helwani picked up on it and his comparison went viral McGregor's coach John Kavanagh even commented on the video and simply wrote: "Familiar." Following the troubled shooting of Warner Bros.’ 1952 swashbuckler The Crimson Pirate The recipient of Best Director honors in Berlin in addition to a Best Foreign Language Film Oscar nod The Devil Strikes at Night is arguably the filmmaker’s most prestigious late-career effort inspector Axel Kersten (Claus Holm) starts an investigation that leads him to a mentally disabled laborer who confesses to having committed that particular murder and many other previous ones but dedicated Gestapo officer Rossdorf (Hannes Messemer) points out that there are a couple of pesky problems with the case: Lüdke can’t really exist and his arrest can’t be made public And that leads to the question: Who is more dangerously deranged the serial killer or the society of which he is a part Notwithstanding its central murder investigation and grimly ironic plot The Devil Strikes at Night has few stylistic similarities to Robert Siodmak’s expressionistic Hollywood crime dramas Such differences may be at least partly explained by the fact that the Nazi era movie is actually less a thriller than a straightforward political drama Although the film begins with a harrowing murder sequence that takes place during an air raid the story quickly veers toward the increasingly intimate relationship between investigator Kersten and a young clerk toward the unpleasant consequences of unearthing inconvenient sociopolitical truths only missing out on a poorly staged fight between Kersten and Lüdke Another directorial minus is the melodramatic tone of some of the film’s more emotionally charged sequences; a more sober approach would have been far more effective or church-/mosque-/temple-going guy found anywhere on the planet But as explained earlier in this commentary Bruno Lüdke’s importance to The Devil Strikes at Night is secondary for Lüddecke’s and Siodmak’s focus is on the depiction of government officeholders and bureaucrats who will do whatever it takes to both perpetuate and extend their grip on power socially accepted atrocities – and the tens (or hundreds) of millions of individuals who choose to look the other way – or those whose atrocious deeds fall outside the law The Devil Strikes at Night and the questions it raises remain as relevant today – whether in authoritarian states or in so-called democracies – as they were in Bruno Lüdke’s homeland in the mid-1940s Screenplay: Werner Jörg Lüddecke; from a series of articles by journalist Will Berthold published in the magazine Münchner Illustrierte in 1956 Cast:Claus Holm … Kommissar Axel KerstenAnnemarie Düringer … Helga HornungMario Adorf … Bruno LüdkeHannes Messemer … SS-Gruppenführer RossdorfMonika John … Lucy HansenPeter Carsten … SS-Standartenführer MollwitzWerner Peters … Willi Keun Producers: Walter Traut & Robert Siodmak The Devil Strikes at Night received one Academy Award nomination (1957): In Petri’s Best Foreign Language Film Oscar and Cannes Grand Prize winner police inspector Gian Maria Volonté kills mistress Florinda Bolkan and then sets out to present the fact – and it’s a fact – that the wheels of justice will not move in the direction of people like him Claus Holm and Annemarie Düringer would be featured in Rainer Werner Fassbinder’s classic television miniseries Berlin Alexanderplatz and Mario Adorf The Devil Strikes at Night images: Divina-Film “The Devil Strikes at Night (1957) Review: Robert Siodmak” last updated in March 2025 My god this McGregor clone who just fought at GMC 18. It's uncanny. Real name: Maurice Adorf (now 2-0). #GMC18 pic.twitter.com/CgkZLWozRA Will the real Conor McGregor please stand up that is not “The Notorious” making his first in-cage appearance of 2019 The fighter featured in the above clip is actually featherweight Maurice Adorf who competed at a German MMA Championship event in Hamburg on Saturday If the grooming and tattoo placement weren’t similar enough Adorf takes a springy stance similar to that of the former UFC two-division champion and even shows hints of the left hand power for which McGregor is known Adorf went on to improve to 2-0 with a TKO victory over Ridvan Nuka so if it is his intention to imitate McGregor as 500 fans cheered for the stars on the new red carpet extended for Bambi 2016 Every rise in volume across Potsdamer Platz signalled the arrival of yet another top star Zara Larsson and German stars such as Matthias Schweighöfer Florian David Fitz and Felix Jaehn pulled up in their Mercedes Benz limousines every few minutes Die Lochis and Bibi also headed to Berlin for the 68th Bambi ceremony which this year witnessed six particularly moving moments The 2016 Bambi ceremony began with a big surprise for Bastian Schweinsteiger as his childhood friend Schweinsteiger received the “Special jury award” in honour of his unique sporting career with all its ups and downs And the German football legend got the Bambi audience on their feet for the first time that evening Sting gave a moving tribute – in German – to Udo Lindenberg “You have given new meaning to the concept of youth culture Standing ovation number two for probably German’s biggest musician of the moment Saba Douglas-Hamilton and Frank Pole pulled the audience to their feet for the third time that evening as they accepted the “Our earth” award for their tireless work with the animal welfare organisation “Save the elephants” Yusra and Sarah Mardini’s contribution to the world was also unseen although totally different: The Syrian sisters were honoured for their courage after they swam beside a refugee boat to keep it afloat saving 18 lives – two unsung heroes whose story added a particularly poignant touch to the 68th Bambi ceremony Standing ovation number five went to Jogi Löw who not only coaches football world champions whose players have roots in various countries work together and exemplify team solidarity for millions of people around the world And this is why the Bambi jury chose Löw for this year’s “Integration” award The sixth person to be honoured by the audience was one of Germany’s greatest actors Mario Adorf has been thrilling German viewers for decades As his colleague Axel Milberg presented him with the “Lifetime achievement” award the audience stood up one last time to express their appreciation Please find additional press material and more images in the media library and on Flickr Bastian Schweinsteiger is visibly proud of his award Winner of the "German actress" Bambi: Anna Maria Mühe Devid Striesow was awarded with a Bambi in the "German actor" category The award-winning Comedian Bülent Ceylan held a passionate acceptance speech DJ Felix Jaehn with his" Entertainment" Bambi Fabian Busch and leading actor Oliver Masucci accepted the Bambi for "Er ist wieder da" in the "German movie" category The presenter for Angelique Kerber's award in the category "Sport" was Kai Pflaume German musician and TV-host Floran Silbereisen received the award in the category "Television" The "Integration" award went to Joachim Löw (left) Music legend Udo Lindenberg received the Bambi in the category "German music" The Bambi for "Unsung heroes" was bestowed on Syrian sisters Yusra and Sarah Mardini Entertainer Robbie Williams with his "International music" Bambi Gymnast Andreas Toba won the people’s choice Bambi “Our Olympic heroes” Received an "Our earth" Bambi in honour of the “Save the Elephants” project: Saba Douglas-Hamilton and Frank Pole Actor Mario Adorf was honoured with a Bambi for "Lifetime achievement" The BAMBI 2024 in the “Our Earth” category will be awarded tonight to one of the most successful extreme mountaineers of our time: Reinhold Messner one of Germany's most successful techno DJs receives the BAMBI 2024 in the category "Culture" Margot Friedländer is honoured with the BAMBI Award in the category “Courage” Everything from the haircut to the mannerisms and the tattoos across Adorf's chest and left arm are clearly influenced by McGregor Fans have been shocked by Conor McGregor's recent weight gain(Image: Irish Mirror)‌Even the way Adorf traditionally enters the ring and a tendency to rely on boxing and fast footwork as his main weapons are signs of the Dubliner's impact on his approach.And the homage goes so far as to mimic McGregor's trademark cockiness both inside and outside the octagon though not always with the desired end result.At its best the braggadocios act can help fighters garner attention attract fans and intimidate their opponents Do you think Conor McGregor will hold a UFC championship again? Let us know in the comments section. But at its worst, mixed martial artists can be made to look naive if they don't back up those actions in the cage, a risk to which Adorf was made painfully aware in November 2019. The stand-up specialist had spent part of the build-up to his bout opposite Alexander Wiens mouthing off to his compatriot, even placing his fist in his face at the weigh-ins.That arrogance carried through to fight night, but he failed to back it up when he was knocked out with a brutal head kick in a little more than one minute. Maurice Adorf lost to Alexander Wiens in a little more than one minute‌Adorf's air of invincibility showed as he walked down Wiens with a high but open guard, shattered seconds later when the latter delivered a straight right to send the McGregor lookalike reeling.Adorf entered the clash with a 2-0 record but suffered the first setback of his MMA career, surviving for 64 seconds before Wiens' head kick led to the fight's conclusion. The former football prospect—who spent time in the youth set-ups of clubs like Overhausen, Essen and Wuppertal before calling time on that career—has since recovered, however. Less than a month after recording his first defeat, Adorf got back on the win trail by beating Yoann Soudan with a second-round TKO. He's since moved up to lightweight in the German MMA Championship (GMC) and won his divisional debut against Ali Almasha'leh in August 2020, though he hasn't fought again since. Wiens (4-1-1), on the other hand, hasn't been inaction since he became the first to better Adorf more than two years ago. Maurice Adorf defeated Ridvan Nuka with a first-round knockout in February 2019(Image: Imago/PA Images)‌Despite the comparisons with McGregor, it's worth highlighting Adorf's 5-1 record is actually superior to the 4-2 record The Notorious held after his first six professional fights. Germany isn't regarded as a prolific breeding ground for mixed martial artists, but there's little stopping Adorf from perfecting his craft to blaze a trail for his country. While McGregor is 33 and rounding towards the end of his fight career, there may be room for a certain lookalike to one day pick up where he left off. den es nie gab.css-9uetne{color:var(--sz-basic-text-color-primary #29293a);margin:auto;margin-top:32px;max-width:calc(640px + (2 * 12px));padding:0 12px;}@media screen and (min-width: 768px){.css-9uetne{margin-top:72px;}}.css-1lgqo8v{color:var(--sz-basic-text-color-primary den es nie gab.css-1xpiq55{font:400 0.875rem/1.5 'SZSansDigital','Neue Helvetica','Helvetica',sans-serif;letter-spacing:normal;display:inline-block;letter-spacing:0.05em;margin-top:16px;}@media screen and (min-width: 768px){.css-1xpiq55{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;margin-top:24px;}}.css-b0z14z{display:inline-block;}27 16:04 Uhr.css-rhp0z0{color:var(--sz-basic-border-color-secondary #c0c1c6);display:inline-block;margin:0 12px;}|.css-13l0r79{display:inline-block;}Lesezeit: 2 Min .css-y4bre2{display:block;height:auto;width:100%;}.js .css-y4bre2{cursor:pointer;}.css-1hdpxq{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:rgb(255 #fff);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:inherit;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform 600ms cubic-bezier(0.23 1);transition:transform 600ms cubic-bezier(0.23 #fff);padding:8px 12px 0;color:var(--sz-basic-text-color-primary #29293a);font-family:'SZSansDigital','Neue Helvetica','Helvetica',sans-serif;font-size:0.875rem;line-height:1.5;}.css-1vyk908 p{display:inline;}.css-1vyk908 small{color:var(--sz-basic-text-color-secondary #71737f);}.css-1vyk908 small{display:block;}.css-1vyk908 a{border-bottom:1px solid var(--sz-basic-text-color-primary #29293a);color:var(--sz-basic-text-color-primary #29293a);padding-bottom:2px;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:border-bottom 150ms ease-in-out;transition:border-bottom 150ms ease-in-out;}.css-1vyk908 a:focus,.css-1vyk908 a:hover{border-bottom-color:transparent;}Bruno Lüdke in Berlin-Köpenick vermutlich in den 1930er-Jahren Lüdke wurde von den Nationalsozialisten bei einem grausamen Menschenexperiment mit vergifteter Munition getötet Von Verena Mayer Es passiert selten, dass sich Schauspieler für ihre Kunst entschuldigen. Mario Adorf tat 2021 aber genau das. Es ging um die Filmrolle, die ihn in den Fünfzigerjahren bekannt gemacht hatte. In „Nachts, wenn der Teufel kommt“ spielte Adorf einen Mann namens Bruno Lüdke, der lange als schlimmster Serientäter der deutschen Kriminalgeschichte galt. Lüdke wurden 53 Morde in ganz Deutschland zugerechnet, die meisten Opfer waren Frauen. 1943 wurde er gefasst und gestand alles. Das Problem: Bruno Lüdke hat kein einziges Verbrechen begangen. Zwar gab es Lüdke wirklich, er wurde 1908 geboren, lebte in Berlin-Köpenick und arbeitete in der Wäscherei seiner Eltern. Aber die Mordserie war eine Erfindung der Nationalsozialisten, die die Leute auch nach 1945 bereitwillig glaubten. Es ist der Fall seines Lebens: Eine junge Frau verschwindet, ein Mann gesteht den Mord an ihr, jahrelang sucht ein Kommissar nach der Leiche. Dann taucht Petra P. nach 31 Jahren wieder auf. In anspruchsvollen Berufsfeldern im Stellenmarkt der SZ. .css-5x0u19{-webkit-text-decoration:none;text-decoration:none;}Gutscheine.css-pcxqtt{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;}: We first got notice of German prospect Maurice Adorf following his second professional victory back in February of 2019, where he TKO’d Serbian opponent Ridvan Nuka just 67 seconds into round one Adorf won his next fight over 4-0-1 opponent Martin Uhlich via split decision, improving his record to 3-0. His next fight would last just 67 seconds as well, with him losing via TKO He was dropped with a right cross just 15 seconds in He made his way back to his feet before his opponent Adorf was right back to his feet after this too but got caught with a left hook followed by a right head kick Next came a bout against 3-2 opponent Yoann Soudan who pressured Adrof throughout the entire first round Soudan was looking for the takedown for the first four minutes of round one Soudan secures a single leg and stayed in Adorf’s guard for the remainder of the round Adorf lands a nice right hook to spinning back kick that sunk in right under Soudan’s elbow to start round two Soudan did his best to stay glued to Adorf pressing him against the fence trying for takedowns allowing Adorf to land a beautiful combination that dropped Soudan A few elbows later and the fight was all over Adorf followed this up with a unanimous decision victory over Jordan talent Ali Almasha’leh back in August of 2020 He improved his record to 5-1 with this most recent victory The thing that’s so appealing about Maurice Adorf, is that he fights exactly like his idol, Conor McGregor It’s not like he does a couple similar things either the way he fights literally mimics McGregor’s style to a T He baits his opponents into his left cross he turns his hips the exact same way and angle when he throws head kicks the way he paws at his opponents with his right hand in order to open up his left it’s the same exact way McGregor does literally everything is that of Conor McGregor The one difference between them is Adorf isn’t quite as effective with it with three of his victories coming via decision but not as defensively sound on the ground Adorf has already shown us he can defend himself on the ground which is a great sign for the 25-year-old prospect This German prodigy doesn’t break character either he’s committed himself to fighting just like the man he idolizes Whether he’s as effective with his striking or not mastering the exact way someone like Conor McGregor fights Not just anyone could do something like that we’ve never seen anyone in the history of mixed martial arts that fights like Conor McGregor that’s one reason he caught on so well It was a brand new style of dangerous striking; it’s like a boxing or kickboxing style that’s done from a karate-like stance but very effective as ‘The Notorious’ has shown us This kid will be able to be flown out to train at high profile gyms to help prepare McGregor’s future opponents We’ve attached links to the fights he’s been a part of because we want you to see for yourself how identical he is to the most popular fighter of all-time and one of the greatest fighters of all-time Do you think Maurice Adorf will make it to the big show or will he stay the regional Conor McGregor