GithubHelp home page GithubHelp logo

tomros766 / pollution_server Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 50 KB

little project developed during erlang and erlixir course on CS studies

License: Apache License 2.0

Erlang 81.96% Elixir 18.04%

pollution_server's Introduction

Pollution server

An OTP application developed as a continuous lab classes project on Erlang and Elixir programming course.

The application provides server allowing to measure pollution levels from different measuring stations.

TODO

  • Change comments from polish to english in polution module
  • fix streams usage in pollution_data_stream module
  • build hierarchy in src dir - group utils and training modules
  • fix testing so they pass with simple rebar3 eunit command

Build

$ rebar3 compile
$ rebar3 shell

Test

The stacktrace print during tests is caused by an intentional server crash

$ rebar3 test

Modules description

Pollution

The module contains structure of data - records station and measurement. A single measurement station is represented as a map(station -> map(measurement -> value)).

The module contains also number of functions providing operations available on a monitor:

  • adding a station
  • adding a measurement value to a specific station
  • removing a specific measurement
  • getting a specific value depending on station and measurement parameters
  • getting a mean of measurements of given type on a given station
  • getting a daily mean from all stations
  • getting a maximum value of given type and a station that has measured it
  • getting a mean of measurements of given type on a given rectangular area

PollutionServer

A client wrapper around previous module - creates more friendly API and guarantees basic app protection Not used anymore - replaced by PollutionGenServer

PollutionGenServer

From the client perspective basicly identical funcionality as PollutionServer, but it implements gen_server behaviour and because of that it delivers better application protection.

PollutionData and PollutionDataStream

Purely training modules - they import data from pollution.csv file, perform operations on it and measure the time of execution The Stream solution needs fixing.

pollution_server's People

Contributors

tomros766 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.