Anemometer wind speed sensor and Raspberry computer


WEATHER STATION - Reading the environment is necessary to be able to trim the wind turbines and solar arrays. The Raspberry pi is used to operate the hydraulics that position the wind turbines according to wind speed as read by this anemometer. Banks of relays trigger the solenoids in sequence to open and close the hydraulic valves for the lifting and lowering rams. Lolita D'Ortona developed this program and control circuit as part of her master's degree in bio-engineering from the University of Liege in Belgium. Copyright © diagrams 29 April 2019. All rights reserved, Cleaner Ocean Foundation Ltd.



Computers are electronic machines that run programs to achieve results in the real world. It is possible to write code to do just about anything imaginable without the need for human intervention, but without the code to run them computers are useless. Fortunately, designers of computers work with software engineers to make some incredible machines that are works of art.


For people who like solving complex problems, programming machines like SeaVax represents a worthwhile challenge and a lasting legacy in the fight to keep our planet clean.



Lolita D'Ortona hard at work coding


PROGRAMMING - It's a lot of hard work, building a program to read all the elements needed to control an energy harvesting station. Some code is available as free source, but most of what is needed to make a workable solution has to be custom written. Copyright © diagrams 9 May 2019. All rights reserved, Cleaner Ocean Foundation Ltd.



Suitably programmed computers are an essential component of robotics and autonomous or artificially intelligent machines that can even navigate the earth as they perform useful functions such as searching for plastic waste and capturing it.


Computer programming is the process of designing and building an executable computer program for accomplishing a specific computing task. Programming involves tasks such as: analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms in a chosen programming language (commonly referred to as coding).


The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem.


The process of programming thus often requires expertise in several different subjects, including knowledge of the application domain, specialized algorithms, and formal logic.

Tasks accompanying and related to programming include: testing, debugging, source code maintenance, implementation of build systems, and management of derived artifacts, such as the machine code of computer programs. These might be considered part of the programming process, but often the term software development is used for this larger process with the term programming, implementation, or coding reserved for the actual writing of code. Software engineering combines engineering techniques with software development practices. Reverse engineering is the opposite process. A hacker is any skilled computer expert that uses their technical knowledge to overcome a problem, but it can also mean a security hacker in common language.




The first step in most formal software development processes is requirements analysis, followed by testing to determine value modeling, implementation, and failure elimination (debugging). There exist a lot of differing approaches for each of those tasks. One approach popular for requirements analysis is Use Case analysis. Many programmers use forms of Agile software development where the various stages of formal software development are more integrated together into short cycles that take a few weeks rather than years. There are many approaches to the Software development process.




A programmer, developer, coder, or software engineer is a person who creates computer software. A programmer's primary computer language (Assembly, COBOL, C, C++, C#, Java, Lisp, Python, etc.) is often prefixed to these titles, and those who work in a web environment often prefix their titles with web.


A software developer needs to have deep technical expertise with certain aspects of computing. Some positions will require a degree in a relevant field such as computer science, information technology, engineering, programming, or any other IT related post graduate studies. An ideal software developer is a self-motivated professional carrying a dynamic hands-on experience on key languages of programming such as C++, C#, PHP, Java, C, Javascript, VB, Oracle, UML, Linux, Python, UNIX, XML, HTTP, Smalltalk, or other software testing tools.


Different programming languages support different styles of programming (called programming paradigms). The choice of language used is subject to many considerations, such as company policy, suitability to task, availability of third-party packages, or individual preference. Ideally, the programming language best suited for the task at hand will be selected. Trade-offs from this ideal involve finding enough programmers who know the language to build a team, the availability of compilers for that language, and the efficiency with which programs written in a given language execute. Languages form an approximate spectrum from "low-level" to "high-level"; "low-level" languages are typically more machine-oriented and faster to execute, whereas "high-level" languages are more abstract and easier to use but execute less quickly. It is usually easier to code in "high-level" languages than in "low-level" ones.


The details look different in different languages, but a few basic instructions appear in just about every language:

Input: Gather data from the keyboard, a file, or some other device.

Output: Display data on the screen or send data to a file or other device.

Arithmetic: Perform basic arithmetical operations like addition and multiplication.

Conditional Execution: Check for certain conditions and execute the appropriate sequence of statements.

Repetition: Perform some action repeatedly, usually with some variation.

Many computer languages provide a mechanism to call functions provided by shared libraries. Provided the functions in a library follow the appropriate run-time conventions (e.g., method of passing arguments), then these functions may be written in any other language.


A range of occupations - including: software developer, web developer, mobile applications developer, embedded firmware developer, software engineer, computer scientist, game programmer, game developer, or software analyst—that involve programming, also require a range of other skills.



SeaVax blue growth ocean cleaning technology


ROBOTIC OCEAN CONDITIONER - This vessel is designed to operate in fleets to target ocean waste before it settles on the ocean floor where nobody can recover it. There is nothing like it in existence today, though other ideas for trapping plastic waste are being developed, such as that of Boyan Slat and the Seabin. SeaVax is made more cost effective in operational terms with AmphiMax versatility that slashes the cost of production and servicing by using a portable dock for assembly, launch and servicing.









RASPBERRY - The raspberry pi is looking to be a catalyst towards solving the world’s computing issues by educating and empowering today’s youth to code. The software is open-source, chip manufacturers have kept their prices low, and the majority of the profits are funneled towards improving the devices and creating incentives to get students programming rather than envelope them in ready-made tech such as to help creativity thrive.






 This website is provided on a free basis as a public information service. Copyright © Cleaner Oceans Foundation Ltd (COFL) (Company No: 4674774) 2019. Solar Studios, BN271RF, United Kingdom. COFL is a charity without share capital. The names AmphimaxRiverVax™ and SeaVax™ are trademarks.