w3resource

Daily Coding Challenges & Projects


Wednesday


Frontend Mini Project Challenge

Focus : Vue.js Components

Small Challenge ( Vue.js ) :

Create a reusable ToggleButton.vue component that:

  • Accepts a label prop
  • Toggles between ON and OFF
  • Emits an event when state changes

Constraints :

  • Use Vue 3 Composition API
  • No external UI libraries
  • Button text must animate on change

Expected Concepts Covered :

  • props
  • emit
  • ref
  • computed
  • Component reusability

Backend Challenge

Language Focus : Python + PHP

Write a function that:

  • Accepts a log file
  • Extracts IP addresses
  • Returns the top 3 most frequent IPs

Constraints: :

  • File may be >1GB
  • Cannot load fully into memory

PHP Challenge :

Build a script that:

  • Accepts a JSON API response
  • Flattens all nested arrays
  • Stores output in a MySQL table

Edge Case :

  • API response may contain empty nodes or mixed types

Database Query Challenge

Problems on SQL - HR Database :

  1. Find all employees who:
    • Have changed jobs at least twice
    • And currently earn more than the average salary of their department
  2. Find departments where:
    • Every employee has at least one dependent
    • And the total department salary exceeds ₹10,00,000

HR database



Data Structures & Algorithms Challenge

  • Easy :
    • Problem : Check if a number is a Harshad (Niven) number
    • Hint : Sum of digits divides the number.
  • Medium :
    • Problem : Find the first non-repeating character in a string.
    • Hint : Use frequency count + second traversal.
  • Hard :
    • Problem : Given a matrix, find the maximum sum submatrix.
    • Hint : Extended Kadane’s Algorithm on compressed rows.

Bug of the Day

Language Focus : Python & PHP

    Buggy Code ( Python ) :

    
    nums = [1, 2, 3, 4]
    print(nums.append(5))
    

Bug : Prints None

Challenge : Explain why and fix it.


    Buggy Code ( PHP ) :

    
    $arr = ["10", "20", "30"];
    echo array_sum($arr);
    

Bug :Works but causes logical errors in strict typing

Challenge :Fix safely with proper casting.

📋 Daily Micro-Project

Focus : DATABASE

Project :

Query Performance Analyzer

Build a system that :

  • Logs slow SQL queries
  • Stores execution time
  • Flags queries >500ms
  • Generates a weekly report

Concepts :

  • Indexing
  • Query execution plans
  • Performance optimization

Trivia: 5 Fun Facts

  1. Python is named after Monty Python, not the snake.
  2. The first computer bug was a real moth (1947).
  3. Java was originally named Oak.
  4. The first website is still online (by Tim Berners-Lee).
  5. PHP originally stood for Personal Home Page.

Tool & Resource of the Day

Tool : Postman

  • API testing
  • Automated request workflows
  • Environment variables

Resource Roundup :

  • Vue.js Official Documentation
  • Python Performance Optimization Guide
  • Free SQL Optimization Cheat Sheet
  • PHP Security Best Practices (OWASP)

Interview Question of the Day

Daily Interview Questions

    Frontend ( Vue Focus ) :
    1. Difference between ref() and reactive() in Vue 3?
    2. What are Vue lifecycle hooks?
    3. Difference between watch and computed?
    4. How does virtual DOM work in Vue?
    Backend ( Python & PHP ) :
    1. Difference between @staticmethod and @classmethod?
    2. What is Python’s GIL?
    3. Difference between require and include in PHP?
    4. How does PHP handle sessions?
    Database :
    1. Difference between clustered and non-clustered index?
    2. When does a full table scan occur?
    3. What is query normalization?
    Others :
    1. What is deadlock in an OS?
    2. Difference between virtualization and containerization?

Daily Quiz Challenge

    Frontend ( Vue & JS) :

    1. Which directive is used for two-way binding in Vue?
    2. What does v-if do?
    3. Which hook runs after component mount?

    Backend ( Python & PHP ):

    1. Which keyword is used to define a generator in Python?
    2. Which PHP function safely escapes SQL input?
    3. What does __init__ do?

    Database :

    1. Which SQL keyword is used to remove duplicates?

    Other Tech :

    1. What is a context switch?

    Mixed Quiz :

    1. Frontend :What is the output of typeof null?
    2. Backend :What is a Python lambda function?
    3. Database :What does GROUP BY do?

Weekly Cross-Domain Activities ( December 06 to December 12, 2025 )

API of the Day:

Integrate OpenWeatherMap API

  • Build /weather?city=
  • Show temperature, humidity, conditions.

Linux / DevOps Tip :

10 commands to monitor server health :

top, htop, df -h, du -sh, ps aux, systemctl status, journalctl, iostat, free -m, uptime. 

Real-World Project of the Week ( December 06 to December 12, 2025 )

Project of the Week:

Build a Full Authentication System (frontend + backend + JWT).

Collaborative Project :

Contribute to an open-source:

Awesome-Dev-Templates GitHub repo.

Case Study :

Study how Twitter handles real-time updates (WebSockets, queues, caching).


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  11-10-2025  22-11-2025  24-11-2025  25-11-2025  26-11-2025  28-11-2025  01-12-2025  02-12-2025  03-12-2025  04-12-2025  05-12-2025



Follow us on Facebook and Twitter for latest update.