Daily Coding Challenges & Projects
Weekend
Frontend Mini Project Challenge
Theme : Mini Frontend Projects
Challenge :
Build a “Theme Switcher Dashboard” (Dark/Light Mode + Accent Color Picker)
Requirements :
- Include toggle buttons for Dark Mode and Light Mode.
- Add color swatches to change accent color (e.g., blue, green, purple).
- Use CSS variables for color themes.
- Implement logic in JavaScript, React, or Vue.js.
Bonus Challenges (optional) :
- Smooth transition animation when switching themes.
- Save theme preference using localStorage.
Hint : Use CSS :root with --variable for themes and toggle them dynamically using JS or component state.
Backend Challenge
Focus : Scala, R, Swift, TypeScript
Scala Challenge :
Create a REST API in Scala using Akka HTTP to fetch and filter employee data by department and salary range.
R Challenge :
Write an R script to import a large CSV of employee data, group by department, and calculate average salary — without loading entire dataset into memory.
Swift Challenge (Vapor) :
Build a simple endpoint /employees/:id that returns JSON data for a single employee.
TypeScript (Node.js) Challenge :
Using Express + TypeScript, create a middleware that logs every request’s method, URL, and timestamp.
Hint : Focus on type safety, async handling, and clean module organization.
Database Query Challenge
Problems on SQL - HR Database :
- Write a SQL query to find employees who earn above the average salary of their department.
- Write a SQL query to list departments where no employee has joined in the last 6 months.
Hint : Use AVG(), GROUP BY, and NOT EXISTS subqueries strategically.
Data Structures & Algorithms Challenge
- Easy:
- Problem : Implement a function to check whether a string is a palindrome using a stack.
- Hint :Use push() and pop() operations effectively.
- Medium:
- Problem : Given an array of integers, find the length of the longest consecutive sequence.
- Hint :Use a HashSet to store elements and track sequences efficiently.
- Hard:
- Problem : Implement an LRU (Least Recently Used) Cache using a Doubly Linked List + HashMap.
- Hint :Optimize for O(1) get() and put() operations
Bug of the Day
Focus : Scala, R, Swift, TypeScript
Buggy Code ( Scala ) :
val nums = List(1, 2, 3)
println(nums.map(x => x * x))
println(nums.reduce((a, b) => a + b))
println(nums.map(x => x + 1))
Find the logic bug - the output is not as expected after using map.
Buggy Code ( R ) :
df <- data.frame(a=c(1,2,3), b=c(4,5,6))
df$c = df$a + df$b
print(df["c"])
Why is column c showing NULL?
Buggy Code ( Swift ) :
var list = [1, 2, 3]
for i in list {
list.append(i * 2)
}
print(list)
What goes wrong? Fix the logic.
Buggy Code ( TypeScript ) :
let user = { name: "Alex", age: 25 };
console.log(user?.address.city);
What’s the issue here? Fix it to safely access nested properties.
📋 Daily Micro-Project
Focus : Backend
Task :
Build a RESTful Book Inventory API (choose any weekend language).
Features :
- Add a new book (title, author, price).
- Update a book’s price.
- Retrieve all books.
- Delete a book by ID.
Bonus : Integrate with a local SQLite or MongoDB instance.
Trivia: 5 Fun Facts
- The first computer bug was an actual moth trapped in a Harvard Mark II relay.
- The word "Python" comes from Monty Python, not the snake.
- CSS Grid was officially added to browsers only in 2017.
- The original Java name was Oak, inspired by a tree outside James Gosling’s office.
- GitHub’s mascot “Octocat” was drawn by an illustrator for fun, not for GitHub itself.
Tool & Resource of the Day
Tool : Postman
- Perfect for testing APIs quickly.
- Supports environment variables, test scripts, and CI integration.
Resource Roundup :
- Insomnia Docs
- MDN Web Docs
- Eloquent JavaScript (free eBook)
- Frontend Mentor
- JSONPlaceholder — mock API for testing
Interview Question of the Day
Daily Interview Questions
-
Frontend :
- What is event bubbling and how can it be stopped?
- Explain how React’s useEffect dependency array works.
- How do Vue.js computed properties differ from methods?
- What is the purpose of the key attribute in React lists?
-
Backend :
- Explain the difference between blocking and non-blocking I/O.
- What are closures in JavaScript, and how are they used in Node.js?
- Describe how dependency injection works in backend frameworks.
- How do you manage environment variables securely in a backend system?
- What is a correlated subquery?
- Explain the difference between DELETE, TRUNCATE, and DROP.
- What is database normalization, and why is it important?
- What is continuous integration (CI)?
- Explain what a container image is and how it differs from a virtual machine.
Daily Quiz Challenge
- What does position: sticky; do in CSS?
- What will typeof null return in JavaScript?
- In React, what happens if you call setState() inside render()?
Frontend :
- In Node.js, what is the purpose of the cluster module?
- What’s the output of Python’s bool([])?
- In Rust, what does the ? operator do?
Backend :
- What is the difference between HAVING and WHERE clauses?
- Which Linux command is used to check running processes?
- Combine React + SQL + Python: "If a REST API in Python fetches SQL data for a React frontend, what HTTP method should be used for data retrieval?"
Database :
Other :
Mixed Quiz :
Weekly Cross-Domain Activities ( October 11 to October 17, 2025 )
API of the Day:
Integrate the OpenWeatherMap API and build a small weather widget showing temperature, city, and weather icon.
Linux / DevOps Tip :
Use top, htop, and vmstat to monitor CPU, memory, and process usage live on Linux servers.
Real-World Project of the Week ( October 11 to October 17, 2025 )
Project of the Week:
Build a “Personal Finance Tracker” — Track expenses, visualize data with charts, and store in a backend DB.
Collaborative Project :
Contribute to an open-source Habit Tracker App on GitHub (Frontend: React, Backend: Node.js).
Case Study :
Study how Spotify’s recommendation system works — replicate a mini version using a dataset and cosine similarity.
Previous Daily Coding Challenges & Projects : 04-04-2025 07-04-2025 08-04-2025 09-04-2025 10-04-2025 11-04-2025 14-04-2025 15-04-2025 16-04-2025 17-04-2025 18-04-2025 21-04-2025 22-04-2025 23-04-2025 24-04-2025 25-04-2025 28-04-2025 29-04-2025 30-04-2025 01-05-2025 02-05-2025 05-05-2025 06-05-2025 07-05-2025 08-05-2025 09-05-2025 12-05-2025 13-05-2025 14-05-2025 15-05-2025 16-05-2025 19-05-2025 20-05-2025 21-05-2025 22-05-2025 23-05-2025 26-05-2025 27-05-2025 29-05-2025 30-05-2025 02-06-2025 03-06-2025 04-06-2025 05-06-2025 06-06-2025 09-06-2025 10-06-2025 11-06-2025 12-06-2025 13-06-2025 16-06-2025 17-06-2025 18-06-2025 19-06-2025 20-06-2025 23-06-2025 24-06-2025 25-06-2025 26-06-2025 27-06-2025 30-06-2025 01-07-2025 02-07-2025 03-07-2025 04-07-2025 07-07-2025 08-07-2025 09-07-2025 10-07-2025 11-07-2025 14-07-2025 15-07-2025 16-07-2025 17-07-2025 18-07-2025 21-07-2025 22-07-2025 23-07-2025 24-07-2025 25-07-2025 28-07-2025 29-07-2025 05-08-2025 06-08-2025 07-08-2025 11-08-2025 12-08-2025 13-08-2025 14-08-2025 15-08-2025 18-08-2025 19-08-2025 20-08-2025 21-08-2025 22-08-2025 25-08-2025 26-08-2025 27-08-2025 28-08-2025 29-08-2025 15-09-2025 16-09-2025 17-09-2025 19-09-2025
