Pinned Repositories
AllKafkaProducers
3 types of Kafka producers
AlternatingIterator
dressup
File-sharing-system
The FSS consists of two types of entities: a file server and many clients. In this FSS: 1. The client can upload files to the file server. It’s fine to upload them one at a time. If the file already exists, replaces it. 2. The client can be able to download a given file from the file server, by providing the full filename path to the file server. If the file does not already exist, it returns an error message on standard error and return a non-zero error code. 3. The client can be able to list the file system objects (files and directories) on a file server directory, including the file server’s root (“/”) directory. If the requested directory does not exist, it can report an error message on standard error and return a non-zero error code. 4. The client can be able to create a directory (if the directory does not exist) and remove empty directories (if the directory is empty), and can be able to report whether or not these operations succeeded. If there’s an error, it can report an error message on standard error and return a non-zero error code. 5. The client can be able to remove a given file from the file server, by providing the full filename path to the file server. If the file does not already exist, it returns an error message on standard error and return a non-zero error code. 6. The file server can allow multiple clients to simultaneously connect to a single file server for upload/download, and allow for apparently-simultaneous transfer. 7. Clients can be able to cleanly shut down the file server. 8. The system can support the resume upload and download: If a file transfer between a client and a server is interrupted (because the network, server, or client has failed), the same client can be able to resume upload/download at the file server from the same point of progress by re-requesting the same filename. This means, the client can not have to upload/download the data that is already uploaded/downloaded. This system also handles server crashes too, uses “flush()” in the server.
GettingDressedUp
Graph-Generator
This web application generates graphs dynamically providing the edges of the graphs as inputs. The nodes and edges in the graph can be adjusted dynamically. Enter each graph edges in one line. Enter edges as pairs of nodes, separated by spaces. (e.g.: 1 2) After Graph is generated, you can drag the edges for better visualization. Source Code flow of control: The web application is developed based on the JavaScript using go.js library, it uses the demonstration of associative arrays. It uses two associative arrays. The first associative array links the numerical values to the nodes of the graph. The second associative array links the transitions in the graph with the edges we provided.
jobcoin-mixer
A Coin mixer is a way to maintain your privacy on the crypto coin network.
Othello
This project is an implementation of “Othello”, a two player board game, using Minimax Algorithm and further extending it with Alpha Beta Pruning Algorithm. This program, when run on any up-to-date computer, is expected to defeat an average player. This is because although the consequences of moves are predictable for both computers and humans, computers are better at envisaging them.1. Introduction Human intelligence is shaped by what is most important to us—the things that cause ecstasy, despair, pleasure, pain, and other intense emotions. Artificial intelligence (AI) is the intelligence exhibited by machines or software. It is an academic field of study which studies the goal of creating intelligence. It is also defined as "the study and design of intelligent agents", where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success. John McCarthy, who coined the term in 1955, defines it as "the science and engineering of making intelligent machines". In computer games, artificial intelligence is used to generate intelligent behaviors primarily in non-player characters (NPCs), often simulating human-like intelligence. The techniques used typically draw upon existing methods from the field of artificial intelligence (AI). Game playing was an area of research in AI from its inception.
tailRecursion-in-scala
Tail Recursion in scala:
kafka-lag-exporter
Monitor Kafka Consumer Group Latency with Kafka Lag Exporter
msravan's Repositories
msravan/jobcoin-mixer
A Coin mixer is a way to maintain your privacy on the crypto coin network.
msravan/AllKafkaProducers
3 types of Kafka producers
msravan/AlternatingIterator
msravan/dressup
msravan/File-sharing-system
The FSS consists of two types of entities: a file server and many clients. In this FSS: 1. The client can upload files to the file server. It’s fine to upload them one at a time. If the file already exists, replaces it. 2. The client can be able to download a given file from the file server, by providing the full filename path to the file server. If the file does not already exist, it returns an error message on standard error and return a non-zero error code. 3. The client can be able to list the file system objects (files and directories) on a file server directory, including the file server’s root (“/”) directory. If the requested directory does not exist, it can report an error message on standard error and return a non-zero error code. 4. The client can be able to create a directory (if the directory does not exist) and remove empty directories (if the directory is empty), and can be able to report whether or not these operations succeeded. If there’s an error, it can report an error message on standard error and return a non-zero error code. 5. The client can be able to remove a given file from the file server, by providing the full filename path to the file server. If the file does not already exist, it returns an error message on standard error and return a non-zero error code. 6. The file server can allow multiple clients to simultaneously connect to a single file server for upload/download, and allow for apparently-simultaneous transfer. 7. Clients can be able to cleanly shut down the file server. 8. The system can support the resume upload and download: If a file transfer between a client and a server is interrupted (because the network, server, or client has failed), the same client can be able to resume upload/download at the file server from the same point of progress by re-requesting the same filename. This means, the client can not have to upload/download the data that is already uploaded/downloaded. This system also handles server crashes too, uses “flush()” in the server.
msravan/GettingDressedUp
msravan/Graph-Generator
This web application generates graphs dynamically providing the edges of the graphs as inputs. The nodes and edges in the graph can be adjusted dynamically. Enter each graph edges in one line. Enter edges as pairs of nodes, separated by spaces. (e.g.: 1 2) After Graph is generated, you can drag the edges for better visualization. Source Code flow of control: The web application is developed based on the JavaScript using go.js library, it uses the demonstration of associative arrays. It uses two associative arrays. The first associative array links the numerical values to the nodes of the graph. The second associative array links the transitions in the graph with the edges we provided.
msravan/Othello
This project is an implementation of “Othello”, a two player board game, using Minimax Algorithm and further extending it with Alpha Beta Pruning Algorithm. This program, when run on any up-to-date computer, is expected to defeat an average player. This is because although the consequences of moves are predictable for both computers and humans, computers are better at envisaging them.1. Introduction Human intelligence is shaped by what is most important to us—the things that cause ecstasy, despair, pleasure, pain, and other intense emotions. Artificial intelligence (AI) is the intelligence exhibited by machines or software. It is an academic field of study which studies the goal of creating intelligence. It is also defined as "the study and design of intelligent agents", where an intelligent agent is a system that perceives its environment and takes actions that maximize its chances of success. John McCarthy, who coined the term in 1955, defines it as "the science and engineering of making intelligent machines". In computer games, artificial intelligence is used to generate intelligent behaviors primarily in non-player characters (NPCs), often simulating human-like intelligence. The techniques used typically draw upon existing methods from the field of artificial intelligence (AI). Game playing was an area of research in AI from its inception.
msravan/tailRecursion-in-scala
Tail Recursion in scala:
msravan/kafka-lag-exporter
Monitor Kafka Consumer Group Latency with Kafka Lag Exporter
msravan/PythonKafkaUtils
msravan/sbt-assembly
Deploy fat JARs. Restart processes. (port of codahale/assembly-sbt)
msravan/scala-practice
This is to practice in scala. How to write and document a scala program. How to write unit tests
msravan/sieve-eroatosthness
Ancient algorithm to calculate the prime numbers.
msravan/update-data
Simple PUT in rest api using Springboot in java