"}.ijQIVv{font-size:14px;font-family:Roboto,serif;color:#fff;width:70%;text-align:center}.dHGtnk{display:flex}.eHHMF{display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;margin:30px}@media (max-width:400px){.eHHMF{margin-left:20px;margin-right:20px}}@media (max-width:360px){.eHHMF{transform:scale(.8);margin-left:5px;margin-right:5px}}.iwLifv{-webkit-appearance:none;background-color:transparent;margin:0;width:20px;height:20px;border:2px solid #000;border-radius:1px;display:grid;place-content:center}.iwLifv::before{content:"";width:.65em;height:.65em;transform:scale(0);transition:transform 120ms ease-in-out 0s;box-shadow:#000 1em 1em inset;transform-origin:left bottom;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}.iwLifv:checked::before{transform:scale(1)}.ciMQVj{font-family:Roboto,serif;font-weight:700;font-size:15px;letter-spacing:2px;margin-left:10px}.hUtap{width:100%;display:flex;-webkit-box-align:center;align-items:center;justify-content:space-evenly;margin-top:60px;margin-bottom:30px;flex-wrap:wrap}.kKUwaH{width:240px;border-top:1px solid #dc143c;display:flex;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;transform:scaleX(0);transform-origin:left center;margin:40px}.cbsmPO{color:#000;font-family:Roboto,serif;font-size:16px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding-top:10px}@media (max-width:768px){.cbsmPO{font-size:14px}}.fLCnML{color:#000;font-family:Roboto,serif;font-size:16px;font-weight:300;margin:0 0 30px}@media (max-width:768px){.fLCnML{font-size:14px}}.jtPlht{display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;flex-direction:column}.ktjfmi{display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;cursor:pointer}.itVmOn{color:#000;text-transform:uppercase;font-size:14px;margin:0}.cppvyU{display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;flex-direction:column}.dcnAvE{font-size:15px}.kQUoHD{display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;flex-wrap:wrap}.gYYsYc{width:30px;height:30px;margin:5px}.jkLveD{padding:5px;display:flex;flex-direction:column;max-width:580px;width:90%;margin-top:40px}.kLbAHS{background-color:transparent;border:1px solid #8b0000;font-family:"Roboto Condensed",serif;width:100%;color:#000;font-weight:300;font-size:15px;padding:3px 3px 3px 10px;outline:0}.kLbAHS:focus{border-color:#dc143c}.jKfwuC{width:100%;margin-top:15px;background-color:transparent;border:1px solid #8b0000;height:250px;font-weight:300;font-family:"Roboto Condensed",serif;color:#000;padding:3px;font-size:15px;resize:none;outline:0}.jKfwuC:focus{border-color:#dc143c}.gYbzPv{display:flex}.iwvANM{display:flex;-webkit-box-align:center;align-items:center;justify-content:space-evenly}@media (max-width:480px){.iwvANM{flex-direction:column}}.ctDSIR{margin-top:15px;width:120px;border-width:0 0 0 2px;border-top-style:initial;border-right-style:initial;border-bottom-style:initial;border-top-color:initial;border-right-color:initial;border-bottom-color:initial;border-image:initial;border-left-style:solid;border-left-color:#dc143c;font-size:13px;font-family:"Roboto Condensed",serif;height:30px;display:block;background:linear-gradient(to right,#dc143c 50%,transparent 50%) right bottom/200% 100%;transition:all .5s ease-out 0s;color:#000;margin-bottom:20px;position:relative;cursor:pointer}.ctDSIR:hover{background-position:left bottom}.ctDSIR:disabled{color:grey;cursor:auto}.exVhjK{position:absolute;right:0;bottom:0;width:10px;height:10px;border-right:2px solid #dc143c;border-bottom:2px solid #dc143c}.gcUaBz{color:#dc143c;transition:all 1s ease-in-out 0s}.sc-knEsKG:hover .sc-dkKxlM{color:#fff}.ffbsdS{margin:20px auto}.hCwOAY{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.dClHRc{width:100%;height:100%;display:flex;flex-wrap:wrap}@media (max-width:1000px){.dClHRc{flex-direction:column}}.dPACQj{font-family:"Roboto Condensed",serif;font-size:40px;font-weight:700;text-transform:uppercase;text-align:left;white-space:pre-wrap}@media (max-width:576px){.dPACQj{width:90%;font-size:36px;text-align:center}}.dkvOkP{color:#888;font-family:"Roboto Condensed",serif;font-size:18px;font-weight:300;letter-spacing:5px;text-transform:uppercase;margin-top:5px}@media (max-width:576px){.dkvOkP{font-size:16px}}.cxCkmH{flex:1 1 0%;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;flex-direction:column;opacity:0}.cTyWSA{flex:1 1 0%;opacity:0}.eIFbvz{display:flex;-webkit-box-pack:center;justify-content:center;flex-wrap:wrap}.rmipv{object-fit:contain;width:100%;height:100%;pointer-events:none;user-select:none;max-height:500px}.kpNevp{opacity:0;width:40px;height:40px;background-color:#dc143c;position:fixed;bottom:20px;right:20px;border-radius:50%;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;transition:all .3s ease-in-out 0s;cursor:pointer;visibility:hidden}.kpNevp:hover{background-color:#000}@-webkit-keyframes bYruQk{0%{opacity:0;transform:translateX(-15px)}100%{opacity:1;transform:translateX(0)}}@keyframes bYruQk{0%{opacity:0;transform:translateX(-15px)}100%{opacity:1;transform:translateX(0)}}@-webkit-keyframes hMVCFL{0%{transform-origin:left center 0;transform:scaleX(0)}36%{transform:scaleX(1);transform-origin:left center 0}54%{transform:scaleX(1);transform-origin:right center 0}90%{transform:scaleX(0);transform-origin:right center 0}100%{transform:scaleX(0);transform-origin:right center 0}}@keyframes hMVCFL{0%{transform-origin:left center 0;transform:scaleX(0)}36%{transform:scaleX(1);transform-origin:left center 0}54%{transform:scaleX(1);transform-origin:right center 0}90%{transform:scaleX(0);transform-origin:right center 0}100%{transform:scaleX(0);transform-origin:right center 0}}@-webkit-keyframes CalBc{0%{opacity:1}100%{opacity:1}}@keyframes CalBc{0%{opacity:1}100%{opacity:1}}@-webkit-keyframes fAQsra{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}@keyframes fAQsra{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}@-webkit-keyframes fwfGYW{0%{transform:skewY(10deg) scale(.9)}50%{transform:scale(1.2)}100%{transform:scale(1)}}@keyframes fwfGYW{0%{transform:skewY(10deg) scale(.9)}50%{transform:scale(1.2)}100%{transform:scale(1)}}
Ernest Bieś
IT specialist // Programmer
I am a graduate of the State Higher Vocational School in Tarnów in the field of Computer Science, which I graduated with the Medal for "Outstanding Graduates of the State Higher School of Higher Education in Tarnów" awarded by the University Senate. From an early age, I was interested in many things related to Information Technology. While studying at schools, I took part in numerous IT competitions. I am constantly trying to develop my skills and broaden my knowledge.
Contact// Projects
Main projects
A full list of my main projects can be found on my GitHub. Some of the projects are in private repositories for security reasons and access to the source code is possible after prior contact.
Media Browser
Mobile application for Android & iOS
System for searching information about audiovisual materials. Project implemented as part of an engineering thesis.
See moreMedia Browser
System for searching information about audiovisual materials. Project implemented as part of an engineering thesis. The application allows you to search and view information about movies, series and people related to the film industry. The application is designed for devices with Android and iOS. The application supports Polish and English.
Technology stack
Application
JavaScript · React Native · RN Navigation · RN SVG · RN Elements · RN Paper · MobX
Server app
JavaScript · Node.js · Hapi.js · nodemon · JSON Web Token · Joi · bcrpyt · Nodemailer · lodash
Database
MongoDB · mongoose · SQLite
FOOTBALL Club
Responsive website
Football club website template. The website presents information about the club. The project also includes an administration panel for managing content on the website.
See moreFOOTBALL Club
Football club website template. The website presents information about the club, reports and details of statistics. The project also includes an administration panel for managing content on the website.
Technology stack
Application
JavaScript · HTML · CSS · React.js · React Router · React Redux · Styled Components · Font Awesome · Material UI · React Spinners
Server app
JavaScript · Node.js · Hapi.js · JWT (JSON Web Token) · bcrypt
Database
MongoDB · mongoose
c0nnected_
Responsive website
c0nnected_ is a chat application created with React. The chat works on the basis of the Hall of Fame principles.
See morec0nnected_
c0nnected_ is a chat application created with React. The chat works on the basis of the Hall of Fame principles. The user has to solve the puzzle to leave his message on the board. There is only one message for each user.
RMS
Responsive website
Restaurant Management System is a system that allows you to manage a restaurant - adding, editing and removing products.
See moreRMS
Restaurant Management System is a system that allows you to manage a restaurant (adding, editing and removing products). The project consists of the frontend and backend layers. Basic HTTP methods such as GET, POST, PUT and DELETE were used in the project. The website contains a form for adding new objects and tables containing individual data about the products on the restaurant menu. The project was created using React.js and Express.js.
Progr4mm3r
Responsive website
Programmer portfolio creator and template. It was the first website I created using React.js.
See moreProgr4mm3r
Programmer portfolio creator and template. It was the first website I created using React.js. While creating this project, I learned how to use the JavaScript scripting language and how to design websites with the use of HTML and CSS.
Online library
Online library created with JavaScript, HTML and CSS only. The application allows you to create your own book library. The data is saved in localStorage. The book can be added by filling out the form on the website. The presented table contains a list of all books and the possibility of deleting a particular item.
Random Number Generator
Responsive website
Random number generator created with HTML, CSS and JavaScript only.
See moreRandom Number Generator
Random number generator created with HTML, CSS and JavaScript only. After clicking on the button the application will generate 20 random integers between 1 and 100 and put them in two columns — even and odd.
Spaceships
Game for PC & Android mobile devices
Spaceships is a puzzle game combining two popular games Ships and Minesweeper.
See moreSpaceships
Spaceships is a puzzle game combining two popular games "Ships" and "Minesweeper". Project is based on a client-server architecture. The aim of the game is to find all the ships on the board in the fewest possible steps.
ApocalyptoGame
Game for PC
ApocalyptoGame is a first-person shooter (FPS) game. In the game, we play the role of a soldier set in a post-apocalyptic world.
See moreApocalyptoGame
ApocalyptoGame is a first-person shooter (FPS) game. In the game, we play the role of a soldier set in a post-apocalyptic world. The player's task is to destroy the enemy ship. The player has the ability to interact with the environment, can pick up items. In order to destroy a ship, the player must collect four cells that will help him power the generator. The way to get cells is different. After collecting all the cells, the player can power the generator on the map, which will blow up the enemy ship. The game has a developed combat and healing system.
Quiz app
Mobile application for Android & iOS
Mobile application that allows you to solve on-line tests. Tests are downloaded from an external server.
See moreQuiz app
Mobile application that allows you to solve on-line tests. Tests are downloaded from an external server. The user has the option of solving a specific test and has a specific time to answer a question. In addition, user can choose a random test and view results. The application has a drawer menu that makes it easy to access all screens. The application is designed for Android and iOS.
Image Binarizer
Desktop application
The application allows you to binarize images. The application supports the basic types of binarization.
See moreImage Binarizer
The application allows you to binarize images. The application supports the basic types of binarization - low-level, high-level, two-threshold and conditional. It allows you to load any image (color or black and white), and then select a specific operation. The application works in a distributed environment using Remote Method Invocation (RMI) - a mechanism that enables remote methods of objects invocation. These objects can reside in other Java virtual machines.
Database Connection App
Desktop application
The application allows you to connect to any PostgreSQL database using the JDBC engine and viewing tables in the database.
See moreDatabase Connection App
The application allows you to connect to any PostgreSQL database using the JDBC engine. The login data can be saved and read because the application uses serialization. In the application, it is possible to view all tables in the database. If the table contains users' contact details (e-mail address), it is possible to send a message. Sending e-mails is performed by Javax Mail. User can add recipients (TO, CC, BCC), message subject and content. After approval, the e-mail is sent to the selected users.
Database Analyzer
Desktop application
Application for analyzing database performance while using VIEW, MATERIALIZED VIEW, WITH and TEMPORARY TABLE. The application allows you to connect to any PostgreSQL database using the JDBC engine.
See moreDatabase Analyzer
Application for analyzing database performance while using VIEW, MATERIALIZED VIEW, WITH and TEMPORARY TABLE. The application allows you to connect to any PostgreSQL database using the JDBC engine. The login data can be saved and read because the application uses serialization.
Task planner
Internet application
My first project in Angular. Task Planner covers the basics of Angular framework.
See moreTask planner
My first school project in Angular. Task Planner covers the basics of Angular. The application includes data binding, the basic appearance of pages using HTML and CSS, forms, tables, dialogs, downloading data using the HTTP protocol from an external server and others.
Java Good Practices
Desktop application
Project covering issues such as good Java programming practices, code style, code review, functional programming and application testing.
See moreJava Good Practices
Project on good Java programming practices, code style, code review and testing. It includes a program that checks the correctness of moves on the board using unit tests. The project uses the Java programming language, the Spring platform and the JUnit library. It also includes a program that validates sample basic banking operations with unit testing using the Spock library and the Groovy programming language. The project also covers functional programming issues such as the use of streams, maps and filters.
Algen
Desktop application
A program that implements genetic algorithms in the C language. It was my first project using the C programming language.
See moreinspyred
Desktop application
Lecture and laboratory with programs and examples on bio-inspired computational intelligence algorithms using the Python programming language and the inspyred library.
See morePizzeria database
Database project
Pizzeria database created with Toad Data Modeler. Basic SQL components (functions, triggers, etc.) have been implemented in the project.
See morePizzeria database
Pizzeria database created with Toad Data Modeler. Basic SQL components (functions, triggers, etc.) have been implemented in the project. The main goal of the project was to create a database for a pizzeria that allows the customer to place orders for the selected type of pizza along with extras, as well as after agreeing to register in the pizzeria database, getting appropriate discounts. Placing an order is possible via the Internet, by phone or in person. After confirming the payment, the preparation of the pizza is transferred for implementation.
Car service station
BPMN Model
Project implemented as part of POWER Project. The subject of the project was to describe and model processes using Business Process Modeling Notation (BPMN) showing the operation of car service station.
See moreCar service station
Project implemented as part of POWER Project (Projekt Współpraca Synergia Zarządzanie w Tarnowie). The subject of the project was to describe and model processes using Business Process Modeling Notation (BPMN) showing the operation of car service station. A detailed course of the repair process of the damaged vehicle will be presented in this project, starting from delivering damaged car for repair to handing over the vehicle. A description of the car engine repair, spare parts ordering, car handover and payment process is presented.
0
completed projects in public repositories
0
projects in private repositories
0
learned programming languages and technologies
0
years of programming
Something more than passion
During programming, I pay a lot of attention to the quality of the source code that I create. I try to follow the rules of clean code and follow them wherever possible.
DRY.
KISS.
YAGNI.
// Projects
Competitions
I focus on self-development and improving professional qualifications through participation in IT competitions. I also release my libraries in npm.
iOS Device Data Extractor
iOS Device Data Extractor is an Autopsy module that creates an encrypted or non-encrypted iOS backup of iPhone and iPad, currently running iOS 10.2 and above. It extracts files from an encrypted or unencrypted iOS backup, including a backup made with iTunes, and can compress them into a ZIP archive for use with the iLEAPP module, for example.
Camera Fingerprint PRNU
Camera Fingerprint PRNU uses photo response non-uniformity of camera sensor (PRNU) to check if a photo was truly taken by a suspected camera or not. Module is not based on metadata such as EXIF, performs a physical analysis of the camera sensor, determines photo response non-uniformity (PRNU), uses the principle that each sensor pixel behaves differently with effects such as non-uniform photo response, making each sensor is unique, identifies each pixel anomaly and uses this information to create a description of the camera sensor - the camera fingerprint.
// Skills
Knowledge
While learning programming I learned the following programming languages and IT technologies.
Frontend
Designing the appearance and structure of web/mobile applications.
More info
Apps & Backend
Designing simple applications, API backend servers and system modeling.
More info
Databases
Designing and management of relational and non-relational databases.
More info
Testing & Deployment
Testing the application, adherence to clean code principles and apps deployment.
More info
// Hobby
Interests
Find out what interests me and how I spend my free time.
< Programming />
The only way to learn a new programming language is by writing programs in it...
From an early age, I was interested in news related to the world of computers and programming. As a young boy, I ran my own servers in online games that were very popular all over the country. It was the first time I encountered the Java programming language. Currently, I am interested in programming mobile and internet applications. I try to create applications with an attractive and user-friendly interface. I am constantly trying to deepen my knowledge in the field of web application development.
CODE. FIX. DEVELOP.
< E-sports & gaming />
Practise until your idols become your rivals...
I have been interested in e-sports and computer games since I was a child. E-sports games are associated with emotions, competition and the desire to constantly improve your skills. These things are not foreign to me. I competed with the best players from around the world in games such as Counter Strike, H1Z1, Fortnite, Apex Legends and VALORANT. E-sport has taught me the desire for continuous development, drawing conclusions and teamwork which is a key element of every e-sport game. During the online games, I also had the opportunity to meet many people from around the world with whom I have very good contact on a daily basis.
LEARN. COMPETE. WIN.
< Cinematography />
Watching movies is a chance to live many lifetimes...
I have been interested in the world of cinema since childhood. In my opinion, watching movies is a chance to get to know many cultures and customs from around the world. Watching movies and series allows you to develop your imagination and the desire to get to know the world. I mainly like watching action movies, dramas and thrillers. Mind-blowing psychological thrillers are my favorites. While watching, the viewer must focus on the plot, think and try to find a solution to a specific puzzle. My favorite movies of this type are Prisoners, The Game, Inception and Split. Sometimes I also like to laugh, have fun and watch a good comedy! ;-)
WATCH. DISCOVER. EXPERIENCE.
< Music />
Music is the shorthand of emotion...
I really like listening to music in my spare time. Sometimes I also listen while working. Music relaxes me and puts me in a good mood. I appreciate songs that have a message in them. I don't have my favorite genre of music, I listen to different kinds of music depending on my mood. I have created my own playlists suitable for various occasions.
LISTEN. FEEL. THRILL.
< Time with friends />
Good time + friends = amazing memories...
Time spent with friends is valuable to me, it gives me a lot of satisfaction. Trips and walks are the best form of relaxation. People are my inspiration and motivation, I like to spend my free time with them. Friendship is the most important thing in life.
FRIENDS. GLADNESS. MEMORIES.
// Contact
Collaboration
Feel free to contact me. For any business inquiries please contact me via e-mail.