Nicholas Johansan

An aspiring software developer

Hi! I'm Nicholas, a student and self-taught programmer, passionate about the IT field and harnessing it to improve society.

Achievements/Awards

A page consisting of a collection of my achievements, awards and certifications, and events I participated in throughout the years.The most notables ones are highlighted like thisIf you want to see the softcopies of the certificates for some of the achievements, please contact me so that I can give you access to my Google Drive of certifications.Any achievements/certifications before 2018 would not be listed here, but they would still be on the Google Drive

Last updated on 28th Sept 2022

Academics

( school subjects related )


2022

- Distinction for all Core Subject Modules in Sem 1.1

2021

- Edusave Scholarship
- Edusave EAGLES
- GCE O Level Academic Excellence Award 2021
- Top CCA Student Award (Maker Faire)
- Top Scorer for O Levels in School
- Singapore Mathematical Olympiad (Senior) (Participation)
- Singapore Physics League (72nd Team out of 162) (Honourable Mention)
- NUS Geography Challenge (Semi-Finalist Team) (Silver for Individual)

2020

- Edusave Scholarship
- Edusave EAGLES
- National Science Challenge (Participation)

2019

- Edusave Scholarship
- Top in Mathematics, Design & Technology, Literature and Geography
- Top in Cohort
- Student Development Award
- Singapore Mathematical Olympiad (Junior) (Participation)
- ICAS (Math) (Credit)
- ICAS (Sciecne) (Credit)
- Nan Hua High School NE Quiz (Participation)
- Istana Heritage Gallery Challenge (Participation)

2018

- Edusave Scholarship

Co-Curricular

( Coding / IT skills / CCA related )


2022

- AWS Academy Cloud Foundations [27376] Course (Ongoing)
- BlockChamps Hackathon (3rd Place)
- GeekOut Bootcamp 2022
- GeekOut Hackathon 2022 (Participation)
- Shopee Code League 2022 (Participation)
- WorldSkillsSG 2023 (Web Technologies) Training
- Web Developer Volunteer @ TalentSG
- iNTUition v8.0 Hackathon (Participation)

2021

- YCEP Central CTF (Participation)
- YCEP Temasek Polytechnic (4th in CTF)
- YCEP CSA Hybrid Bootcamp (Distinction)
- Shell Education NXplorers (Participation)

2020

- App Development with Swift Level 1 (Apple)
- IMDA Apple Swift Accelerator Programme
- Innovation Garage Micro:Bit Training
- Organisation of CCA Display Day

2019

- IMDA Edutech Showcase
- The Schools Challenge (Top 6 Finalists)
- G!nnovation (2nd Runner Up/Participation)
- 65 Drones (Drone Swarming with DJI Tello) Course
- Nanyang Polytechnic Science & Technology Challenge (Participation)
- Young Technopreneur for a Sustainable 2030 3-Day Hackathon (Participation)
- Bedok Heartbeat Cardboard Slotting Showcase
- Republic Polytechnic Digital Toymaking Competition (Participation)

2018

- Nanyang Polyetechnic Science & Technology Challenge (Participation)
- MakerFaire@OTH Showcase

Experiences

( my roles )


- TP ITSIG CCA (2022 - ??)
Subcommitee Member
Content Writer/Presenter for Git Workshop
Content Writer for TechBytes
- WorldSkillsSG 2023 - Web Technologies (2022 - ??)
Potential Competitor in Training
- TalentSG Initiative (2022 - ??)
Web Developer Volunteer - Creating a Opportunities Catalogue Website with NextJS, TypeScript and Contentful
- MakerFaire CCA (2020 - 2021): Chairperson- IMDA Apple Swift Accelerator Programme: CEO of Group 9- Team Leader for the following:
> Young Technopreneur for a Sustainable 2030 3-Day Hackathon
> The Schools Challenge 2019
> G!nnovation 2019
> NXplorer 2021

My Projects

Main Projects

My main projects consist of 4 different projects that demonstrates the different areas of Information Technology.
Click on the respective project names to navigate to their respective sections.
They are:
- CoviStats (a desktop and web application displaying data from an API; made primarily with React)
- Recipely (a iOS application organising data from an API in a user-friendly way; made with Swift in Xcode)
- SG Dustbins (a system consisting of a Android application with IoT integration to Arduino; made with Thunkable)
- ΣP5 (a Discord bot; made with python discord.py)


CoviStats is a desktop and web application that shows statistics about the number of Covid-19 cases around the world. It shows the number of Total and Active cases as well as Recoveries and Deaths.The app features are:
> Global Statistics
> Countries Statistics
> Country Search (includes 4 sorting options)
> Latest data (every 1 minute)
> Mobile Responsive (Web Version)
> Dark/Light Mode (Web Version)
This is an app made with Web Technologies.
The desktop app is made withJavaScript using React, Tauri.
The web app is made withTypeScript using React, and TailwindCSS.
The data it presents is from the disease.sh API which sources data from Johns Hopkins University, New York Times, Worldometers and Apple reports. As for the sources for other country-specific data, it can be found in their READMEThis project is a revamped and improved version of another Covid 19 Statistics App I made back in 2020, when the Covid-19 virus started to spread worldwide, to learn more about making desktop apps with tkinter as well as to learn how to make API calls and get data.I made this project to learn more about making web apps with the ReactJS frontend framework, and to try out various other technologies such as TypeScript, TailwindCSS for styling, Tauri for creating a desktop app, as well as improve my proficiency in JavaScript.


Recipely is a iOS recipe app which shows you recipes based on your dietary restrictions and preferred diets, and also helps you gauge how healthy a recipe is (for those of you who are health conscious)Whether you are a newbie or expert in cooking, Recipely will help guide you along the way from, picking a recipe to cooking it.It features:
> Recipe Search (based on your dietary preferences/restrictions)
> Clear Details on Recipes (including nutritional info)
> Shopping Checklist of Ingredients needed
> Intake Tracking with HealthKit Integration
> Simple to follow steps (including a built-in timer)
This app is created by Group 9 (where I was the CEO) during the IMDA & Apple Swift Accelerator Programme 2020.
It was a project where participants of the programme had to make a final app project by applingy their app development skills learnt during the course of the year with Apple's Xcode. It mainly uses the spoonacular api for recipes, and formats the data in a user friendly way to help users make a recipe.
Throughout the making of this app, I learnt more about developing iOS Apps with Xcode and Swift, and even ended up successfully attaining Apple's Level 1 App Development with Swift certification (with the opportunity given during the course of the programme)Visit its page and intro video (may not be up forever since it is managed by swiftinsg.org)


SG Dustbins

SG Dustbins is an IoT system consisting of an Android app integrated with a IoT devicemade to combat the issue of recyclable plastics being contaminated with non-recyclable waste. This issue was caused by the public’s lack of awareness as to what are recyclable plastics.

SG Dustbin App:
> allow the users to locate the bins (through a map with bins marked)
> facilitate identification of recyclable plastics (via a photo of the item taken by the user through the app)
> communicate with the bin (and ensure only recyclable plastics get in)
> incentivise people to use the system (through points & vouchers)
SG Dustbin Bin:
> deployed uniformly around Singapore
> be able to lock/unlock
> act as collection points for the recyclable plastics
> communicate with the app (to ensure only recyclable plastics get in)
(Sadly, I don't think I have the original APK anymore, but it was a great experience embarking on this project)

This project was made during the Young Technopreneur for a Sustainable 2030 Hackathon and improved during G!nnovation 2019.From it, I learnt more about a online android app development tool called Thunkable, and also taught me how to integrate IoT into solutions by using Bluetooth as a means of communication

Prototype App

Prototype Bin

Arduino Code

Arduino Circuit

circuit

ΣP5 is a discord bot made mainly to entertain me and my friends, it has some fun commands and also features a mock economy with virtual fake credits, of which the data is stored with MongoDB.The bot's command categories are:
> User (commands to do with user data)
> Economy (commands to do with the economy like banking)
> Items (commands to do with trading items, buying and selling)
> Rewards (rewards commands)
> Fun (some simple fun commands like coinflipping or dice)
It has a customisable shop with some customisable arbitrary items you can put on the shop (through the database), and the prices of the items would vary from time to time, so you can profit from buying low and selling high. And the bank operates with hourly compound interest with the rates depending on the user's level.This bot made with python using the discord.py library, and its database is hosted on MongoDB which is accessed by the bot using the pymongo library. The bot is also hosted on heroku 24/7.Its sole purpose was for me to improve on an older bot project of mine and learn new libraries such as pymongo and asyncio. It also serves as a platform to deploy some simple python scripts as commands just for fun or practice.Throughout making this bot, I learnt various things such as, performing database operations with [MongoDB], using heroku as a Platform as a Service (PaaS), as well as other libraries. Besides, this also helped me better understand the filesystem of a project and how to structure a project.


Mini Projects

My mini projects consist of small projects that I work on at the side. Most of the time, they are just some utilities that I make for myself to automate some process or to make tasks quicker.
They are:
- TinyLS (a desktop application version of TinyURL; made with python tkinter)
- PyrLS (a command-line application serving as a link shortcut; made with standard python)
- MyBSF (a Android app to faciliate signups for BSF and give info about it; made with Thunkable)


TinyLS is a unofficial desktop application version of TinyURL. It stands for Tiny Link Shortener

This was made before tinyurl updated their website UI, so it works by making a call to one of the deprecated website endpoints to create a shortened url. If it is successful, the application would copy it to your clipboard.This app was made shortly after I learned some basic tkinter, to put what I learnt into practice and make something simple for myself. This was especially useful during the period of time as it allowed me to effortlessly create short links for my HBL resources.


PyrLS is a command-line application that serve as a shortcut to links. It stands for PyrLink Shortcuts.This app was made with python and it was made to serve as a simple platform for all my link shortcuts.Through this project, I learnt how to save files and info on the user's machine, by storing them and accessing them from the %localappdata% path.


MyBSF is a android application that facilitates signups for activities at the Black Soldier Fly Facility in Tampines and serves info about the facility to the userThe app objectives are to:
> facilitate signups for volunteering at the facility
> facilitate signups for contribution of food
> provide key information on the facility
This is an app made with Thunkable during the NUS Geography Challenge 2021 and was used for its Circular Component.It was made to complement the poster that was submitted for the Creative Component of the NUS Geography Challenge 2021, and its intent was to give my school an edge over other schools' poster by showing that we took initiative to connect with the owner of the facility and also create an app.


Unfinished Projects

My unfinished projects consist of ambitious projects and ideas that I have worked on and stopped or paused due to development limitations that may come from my lack of knowledge or limitations on a certain feature. I plan on continuing them with different frameworks/libraries in the future when I have learnt more about how I would go about making them fully functional in the future. And so, these projects are still at its prototyping stage, and remains as a concept or a design idea.
They are:
- FyreChat (a desktop application that serves as a chat client; made with python tkinter)
- YTM (a desktop application serving as mp3 player and a music downloader; made with python tkinter)


FyreChat

GitHub Link Unavailable: The code is stored locally on my computer

FyreChat is a desktop application that aims to serve as a chat clientIt is still at its prototyping stage because I'm not familiar with network communication between clients and do not understand it, and so more learning has to be done. So far, only the server for authentication and the login/signup page is made functional.


YTM is a desktop application that aims to serve as a mp3 player and a youtube music downloader. It stands for YouTube Music ManagerA preview design of the mp3 player can be seen below.


Contact

feel free to contact me with any of the following

Email: [email protected]
Discord: NJ#5700