Skip to content

Instantly share code, notes, and snippets.

View arangates's full-sized avatar
🔬
Gedankenerfahrung

Aranganathan Rathinavelu arangates

🔬
Gedankenerfahrung
View GitHub Profile
# Advanced React Patterns and Best Practices
As an experienced React developer and code reviewer, I'll walk you through some of the most effective and widely acknowledged patterns and practices in React development. These have been recognized by senior engineers worldwide as the key to building robust, scalable, and maintainable applications.
## 1. Component Design Patterns
### a. Container-Presenter Pattern
- **What it is:** The container is responsible for handling state, logic, and data fetching, while the presentational component is stateless and focuses purely on rendering UI based on props.
- **Why it’s important:** This separation of concerns makes your components more reusable and easier to test. Presentational components are pure and focus on rendering, making them easier to reason about.
ExperienceExperience
ASML logo
Software Engineer 3Software Engineer 3
ASML · Full-timeASML · Full-time
Jul 2022 - Present · 1 yr 4 mosJul 2022 - Present · 1 yr 4 mos
Veldhoven, North Brabant, Netherlands · On-siteVeldhoven, North Brabant, Netherlands · On-site
As a Front-end web Developer in Computational Lithography Application, i am working at the core of data visualisations of data analytics dashboards translating data into engaging graphical user interfaces. Such tooling is intended to optimize wafer throughput and enable more precise monitoring and control for High Volume Manufacturing applications in modern semiconductor fabs.As a Front-end web Developer in Computational Lithography Application, i am working at the core of data visualisations of data analytics dashboards translating data into engaging graphical user interfaces. Such tooling is intended to optimize wafer throughput and enable more precise monitoring and control for High Volume Manufacturing applications in modern semiconductor fabs.
Ski
@arangates
arangates / nlp.py
Created March 14, 2022 00:41
[ypdf
# %%
from docx import Document
# %%
document = Document('./sample.docx')
# %%
paragraphs = document.paragraphs
# %%
@arangates
arangates / index.html
Created February 16, 2021 09:43
Skateboard Video Platform
<div class="container">
<div class="sidebar">
<span class="logo">S</span>
<a class="logo-expand" href="#">skateboard</a>
<div class="side-wrapper">
<div class="side-title">MENU</div>
<div class="side-menu">
<a class="sidebar-link discover is-active" href="#">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M9.135 20.773v-3.057c0-.78.637-1.414 1.423-1.414h2.875c.377 0 .74.15 1.006.414.267.265.417.625.417 1v3.057c-.002.325.126.637.356.867.23.23.544.36.87.36h1.962a3.46 3.46 0 002.443-1 3.41 3.41 0 001.013-2.422V9.867c0-.735-.328-1.431-.895-1.902l-6.671-5.29a3.097 3.097 0 00-3.949.072L3.467 7.965A2.474 2.474 0 002.5 9.867v8.702C2.5 20.464 4.047 22 5.956 22h1.916c.68 0 1.231-.544 1.236-1.218l.027-.009z" />
@arangates
arangates / Linux.txt
Created December 10, 2019 09:27
list of useful commands
# change default terminal
sudo update-alternatives --config x-terminal-emulator
# list shells
cat /etc/shells
# change default shell
chsh -s $(which shellname)
# <------------------------NORMAL FUNCTION -------------------------------->
# # Build and return a list
# def getKeys(data):
# return list(data.keys())
# obj = { 'bar': "hello", 'baz': "world" }
# keys_list = getKeys(obj)
# <------------------------BEHIND THE SCENE ------------------------------->
@arangates
arangates / Music-classification-into-genres.py
Created June 23, 2019 17:42 — forked from sdoshi579/Music-classification-into-genres.py
Model generated to classify extracted features from music clips into different genres
import librosa
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import os
import csv
# Preprocessing
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder, StandardScaler
@arangates
arangates / AesJava.java
Created December 19, 2018 03:34
AES encryption + decryption
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import javax.crypto.spec.IvParameterSpec;
@arangates
arangates / Autosize.ts
Created October 19, 2018 10:08
Angular autoresize textarea directive
import {
Directive,
ElementRef,
Input,
AfterViewInit,
DoCheck,
OnDestroy,
NgZone,
} from '@angular/core';
import {Platform} from '@angular/cdk/platform';
{
"1": "Chapter 1",
"2": "Chapter 2",
"3": "Chapter 3",
"4": "Chapter 4",
"5": "Chapter 5",
"6": "Chapter 6",
"7": "Chapter 7",
"8": "Chapter 8",
"9": "Chapter 9",