C & CPP
C
Document Map
Creating a structure (struct) of a document's long string and separating it into a struct document that contains
structs paragraph that contains structs sentence that contains structs words.
The form of it:
struct document => struct paragraph => struct sentence => struct word.
To view the code Click Here
Communications
Generic Hash Table
HashTables are data structures that support these three operations:
1. Adding an element
2. Removing an element
3. Searching for an element .
The HashTable implemented by using an
array that at each index of the array, there is a pointer to a linked list.
The HashTable is support int and strings.
To view the code Click Here
HTTP Client
An HTTP client that constructs an HTTP request based on user’s command line input, sends the request
to a Web server, receives the reply from the server, and displays the reply message on screen.
(support only IPv4 connections).
For Example:
./client -p blabla -r 2 tel=02-6655443 age=23 http://www.ptsv2.com/t/ex2
The Request would be:
POST /t/ex2?tel=02-6655443&age=23 HTTP/1.0
Host: www.ptsv2.com
Content-length:6
blala
To view the code Click Here
HTTP Server & Thread-pool
HTTP server that:
- Constructs an HTTP response based on client's request.
- Sends the response to the client.
The server creates the pool of threads in advanced and each time it needs a thread to
handle a client connection, it take one from the pool or enqueue the request if there is no
available thread in the pool.
There is always one socket where the server listens to connections and for each client connection request,
the server opens another socket. and let a thread handle it.
To view the code Click Here
CPP
Binary Tree
The program receives numbers and builds a binary tree (using struct node).
It stores each number in the right place on the tree. It can also print the tree, create a mirror of the tree,
check its height, print the smallest value, check its "binary search tree" and check if two trees are the same.
To view the code Click Here
Polynomial
Receives polynomial and can do a lot of calculation with them like sum of two
polynomials or multiply them.
after you enter the numbers and put them in array and each object is a polynomial and can do
+,+=,-,-=,*,*=,=,[]
and the output:
print the polynomial from the bigger to the smallest of the coefficient.
To view the code Click Here
Java
Chess pieces
There is an implementation of polymorphism with a Knight and a
Bishop and the calculations of victories between them.
To view the code Click Here
Sudoku
A backtracking algorithm that solves sudoku at all levels from easy to very difficult.
The algorithm checks the numbers available in each cell according to the row-column-cube rule and the numbers already filled,
and according to this it will fill the cell with a number and read recursively for the next cell, until it finishes solving.
To view the code Click Here
Operating System
Memory Management
its a simulation of system memory Management , how the system load the process to memory
and have page table , that we don't need to bring all pages at ones,
where we keep all the file we edited...
To view the code Click Here
Disk Memory Management
Its a simulation of disk memory Management , how the disk create files open them
reads form them, delete and write...
for each file we have inode (a structure) that points to blocks on disk and
there will be the file data.
To view the code Click Here
javaScript
IMJ - Full Stack project
I built this project for The Israel Museum, Jerusalem.
The technology stack:
> For the DB I used MySQL
> For the FrontEnd I used React with Redux
> For the BackEnd I used REST-API and WebSocket (NodeJS)
> For the deployment I used Heroku
> For the documentation I used wiki.js
> To menage all the project I used Monday and Git
The project goal is to build a Management events system for IMJ.
To view the FrontEnd code Click Here
To view the BackEnd code Click Here
To view the documentation (use the credential below) Click Here
username: imj.guest@gmail.com
password: 87654321
To view the platform (use the credential below) Click Here
username: imj.guest
password: Aa123456
Need For Meat
I built this site together with a partner, and there is a bit of html and css
but mostly a lot of javascript, the site is called Need For Meat,
where you can find everything from good restaurants and quality recipes to grill-man for your event.
To view the code Click Here
To view the website Click Here
Memory game
I built this site together with a partner, and there is a bit of html and css
but mostly it is Jquery, the site is a Memory Matching game - you have on screen 30 pictures
and after you press on one pic you need to press on a second pic to find his match.
To view the code Click Here
To view the website Click Here
CRUD - API - Server
I built this site together with a partner, This is an implementation of CRUD API.
CRUD stands for Create, Read, Update, and Delete.
In this application I wrote both client and server sides,In the server I used a json file to handle all the data.
The story here is a tour site
and in the client side you can Create, Read, Update, and Delete tours and sites, I also added
a validation in both sides client & server.
for the implementation of this I used: Jquery, Express , Node , Ajax.
To view the code Click Here
CRUD-api-server-mongo
This is an implementation of CRUD API.
CRUD stands for Create, Read, Update, and Delete.
The same site as the "CRUD - API - Server" above, but this time the implementation of CRUD API is not to handle data in
a json file, Here for all the data handling in the CRUD functions I used MongoDB.
To view the code Click Here
Android Studio
Flutter
Yana
YANA is a social initiative intended to fight against loneliness amongst young adults
This project is meant to help people create new social circles within safe spaces.
I built the App with my friends, to learn more about the app go to our Wiki.
To view our Wiki Click Here
To view the code Click Here
Java
Work Schedule
This app will help you send your shifts for work
and will help the manager create and organize the shifts with one press of a button.
To view the code Click Here
Musician Finder
This app will help musicians find other musicians or bands to play music with.
Users can chat with other people, upload posts and connect with other people in their area.
We did extensive use with FireBase (authentication, real-time database).
It was created with friends, as a team.
To view the code Click Here
Tic Tac Toe
This is the famous game Tic Tac Toe / noughts and crosses.
There are Xs and Os, the players take turns marking the spaces
in a 3×3 grid. The first player who succeeds in placing three of
their marks in a horizontal, vertical, or diagonal row is
the winner.
You can play against the computer or against your friend. The computer looks for the quickest way to win in the least moves.
To view the code Click Here
Python
Big Data
This is an implementation of k-means algorithm(Machine Learning) on NBA player data over Spark.
Spark is use for to calculate the data over number of machines and not only one, this way we don't have bottleneck's.
To view the code Click Here