Based on 16 student review(s) and 13 tip(s) for this examiner (grouped from similar proctor IDs).
Traits
ChillPatientFriendlyCalmProject-focused
Attitude
Generally calm and student-friendly. Described as nice/helpful by students. Some students report a stricter or colder tone
Questioning style
Expects you to know and possibly modify your project code
Preparation tips
• He is very helpful, i am bad at English communication, he gave option to talk in Hindi, also one thing doesn't work in front of him, he said no problem it's ok then countiue to ask diffrent question
• He was friendly
• He seemed very calm and asked questions based on your answers as follow ups
• Got last slot for the day, and examiner was a little tired and despite that he was positive in his approach, very patient, and and helpful where possible. He's sharp as far as noticing details like filenames but generally forthcoming. Be confident in what you say, talk in a flow/rhythm instead of mumbling. If you need a moment, ask for it - examiner will give you time to think, it's not a rapid fire examination.
• Got the last slot for the day at 10pm and despite that the examiner took a positive approach from the start. He was very patient and helpful where possible. He is sharp towards noticing details like filename accuracy and circular logic or avoidance of answers via fluff content. Be confident and clear in what you say, speak in a flow/rhythm if you don't know, say it; if you know and need a moment, also say it - he gives time to think, this is not a rapid fire contest. Good luck
• Had a really nice attitude
I didn't have to say anything
He guided me throughout
Overall he was nice even though I didn't had a functionality in my project
• Proctor was very calm and chill
• Just be confident , even if u make some mistake while writing the code at the end he guides
• Prepare this sheet well and don't panic during viva
• Had a really nice attitude
I didn't have to say anything
He guided me throughout
• Very polite and chill guy
• The viva instructors is kind and give us time to explain and too good dev manush 🤘🏻
• My viva was the last slot, he was quite bored and uninterested in giving instructions. It took 20 minutes. He is asking basic questions in code, and to write basic syntax of html and jinja. Be prepared with simple and to the point answers. The proctor is chill and gives you time to think about your answer. If you do not know - say so he will clarify or ask another question. All the best!
Tips for this examiner: He is unpredictable , can ask anything, be thorough with your code . Just make sure you know what you are doing and he does give 2nd chance , if you ask ( basically burry you) , be prepare to write code on notebook
Student reviews
Sheet responseMAD1
My viva was the last slot, he was quite bored and uninterested in giving instructions. It took 20 minutes. He is asking basic questions in code, and to write basic syntax of html and jinja. Be prepared with simple and to the point answers. The proctor is chill and gives you time to think about your answer. If you do not know - say so he will clarify or ask another question. All the best!
Questions remembered
MAD 1 Level 1 Viva:
- Show student ID
- Show Github collaborators
- Run the app
- Asked to login as admin, staff and user to check bookings
- Write for loop in Jinja
- Write flask route for names starting with letter "a"
- Write html for taking email and password as input
- CSS vs Bootstrap difference and definition
- What are Git Versions
- Asked to show model.py and explain what is db.model
DheerajMAD1
The viva instructors is kind and give us time to explain and too good dev manush 🤘🏻
Questions remembered
Download project from the portal
check if card
checked GitHub collaborator
ask me to write for loop in jinja 2
write a search route
asked me to login as admin
add a trek assign it to staff
create 2 staff(approval in admin)and 2 users
assign both staff to different treks
login as staff
update the trek status to open and decrease no. Of slots to 1 user to book a slot which is open by staff
the slots decrease by 1 then they asked me to again book for the same slot and then asked show me multiple booking prevention in the code then put vs post? Then what is virtual environments? That's it
HarshaaMAD1
Shared viva questions from response sheet: Write code using jinja which uses for loop then a flask statement for printing the input number is even or odd; Said to create staf and used and so on to perform certain actions; Uses of PUT and POST
Questions remembered
Write code using jinja which uses for loop then a flask statement for printing the input number is even or odd
Said to create staf and used and so on to perform certain actions
Uses of PUT and POST
Why we use Github
Asked to show which part of the code is used to display the treks in user dashboard
Then he just said thank you for coming to level 1 viva
Sheet responseMAD1
Very polite and chill guy
Questions remembered
asked to show id
Download project from portal
Asked for GitHub repository
Asked me to open notepad and write the html code for a table
Write a route for login page
Asked me to demonstrate by registering two staff ,then two users
Asked for edit profile for users and search functionality
Asked me to show my models
Asked me to write some basic flask codes
Asked PUT and POST
What is GIT
KhushiMAD1
Had a really nice attitude I didn't have to say anything He guided me throughout
Questions remembered
1.asked to show id
Download project from portal
Asked for GitHub repository
Asked me to open notepad and write the html code for a table
Write a route for login page
Asked me to demonstrate by registering two staff ,then two users
Asked for edit profile for users and search functionality
Asked me to show my models
Asked me show the code part where I have prevented booking if the slots are over
Asked PUT and POST
What is the purpose of GIT ....when I told the definition asked what is version control? Explain
Asked definition of decorator
Sheet responseMAD1
Prepare this sheet well and don't panic during viva
Questions remembered
Level1_128: *Coding*
Flask route to print even or odd number
Any html code *Demonstration* Add 2 staff Add 2 trek Assign staffs to trek Try to book a trek with 0 slots Deactivate user *Theory questions*
Difference between PUT AND POST
Difference between Css and bootstrap
Git vs GitHub
Show which code creates the database
Sheet responseMAD1
Shared viva questions from response sheet: also y we are using venv
Questions remembered
also y we are using venv
Sheet responseMAD1
Just be confident , even if u make some mistake while writing the code at the end he guides
Questions remembered
-asked me id card, show collab,download project from viva portal
-asked me to write the flask code for login
-then asked me to write route to print whether the number is even or odd
-what is api
-filter vs filter_by
-asked me to create data, then asked me to create new trek staff, trekker
-show admin approving trekkstaff account,then assigning a trek to that staff with only one slot
-then create 2 users and show how second user cant book the trek because slots are over
-show this functionality in the code
-and asked to show models.py
Kritagya MadaanMAD1
Proctor was very calm and chill
Questions remembered
Modify colour of login button
Write flask code to check number even or odd
Add 2 staff and approve
Add 2 trek assign 1 to each staff
Create trek with one slot and book it
Blacklist a staff and login that staff
Asked about difference between post and put
Relationship between css and bootstrap
What is git
KhushiMAD1
Had a really nice attitude I didn't have to say anything He guided me throughout Overall he was nice even though I didn't had a functionality in my project
Questions remembered
Same proctor Level1_128 1.asked to show id
Download project from portal
Asked for GitHub repository
Asked me to open notepad and write the html code for a table
Write a route for login page
Asked me to demonstrate by registering two staff ,then two users
Asked for edit profile for users and search functionality
Asked me to show my models
Asked me show the code part where I have prevented booking if the slots are over
Asked PUT and POST
What is the purpose of GIT ....when I told the definition asked what is version control? Explain
Asked definition of decorator
Sheet responseMAD1
Got the last slot for the day at 10pm and despite that the examiner took a positive approach from the start. He was very patient and helpful where possible. He is sharp towards noticing details like filename accuracy and circular logic or avoidance of answers via fluff content. Be confident and clear in what you say, speak in a flow/rhythm if you don't know, say it; if you know and need a moment, also say it - he gives time to think, this is not a rapid fire contest. Good luck
Questions remembered
Mad1 viva1
Level1_128
Show ID
Show GitHub collaborator
Download project from viva portal
Run project
Login as admin
Write code to recreate core functionality of login page
Write code to show list of all users whose name starts with "a"
Show working of app
Login as admin
Show dashboard - manage treks, users, staff
Register as staff1, staff2
Approve staff as admin
Add trek1, trek2 as admin with only 1 slot in each
Assign staff1, staff2 to treks
Login as staff and show treks assigned
Blacklist staff1 and show blacklisting response as admin and staff
Register as user1, user2
Book trek1 as user1
Try to book trek1 as user2 and show overbooking protection
Show code segment where overbooking prevention is implemented
Show code segment where database is made
Git vs GitHub
What is decorator
Sheet responseMAD1
Got last slot for the day, and examiner was a little tired and despite that he was positive in his approach, very patient, and and helpful where possible. He's sharp as far as noticing details like filenames but generally forthcoming. Be confident in what you say, talk in a flow/rhythm instead of mumbling. If you need a moment, ask for it - examiner will give you time to think, it's not a rapid fire examination.
Questions remembered
Show ID
Show collaborator on GitHub
Download project from viva page
Run project
Write html for login/registration page
Write code to show users whose name starts with "a"
Show working of app
Login as admin
Add treks
Register as staff
Approve staff as admin
Show staff blacklisting capability - show blacklisting from admin and staff pages
Assign treks to staff as admin
Register as user
Book open trek
Show overbooking prevention trying to book trek with zero slots available
Show code where overbooking prevention is implemented
Git vs GitHub
What is decorator
KMAD1
He seemed very calm and asked questions based on your answers as follow ups
Questions remembered
Level 1 _ 128
-asked me id card, show collab,download project from github
-asked me to write the html code for the login form
-then asked me to write route to print my name
-asked me definition of PUT and POST
-asked me definition of decorator and to show decorator in my application
-asked me to create data, then asked me to create new trek staff, trekker
-show admin approving trekkstaff account,then assigning a trek to that staff with only one slot
-then create 2 users and show how second user cant book the trek because slots are over
-show this functionality in the code
-show search functionality in admin page
then he said thank you for coming to viva
PantherMAD1
He was friendly
Questions remembered
ID card and Repo collaboratos
Asked to show demo of project by performing some actions like registering company, registering student, creating drive and applying to that drive as a student
Authentication vs Authorization
what is Sql alchemy
what is Jinja template
write a for loop using Jinja template in notepad
xyzMAD1
Shared viva questions from response sheet: Didn't showed the full project or demonstration; asked to change code both frontend and backend; jinja, flask, db, asked everything
Questions remembered
Didn't showed the full project or demonstration
asked to change code both frontend and backend
jinja, flask, db, asked everything
Amandeep SinghMAD1
He is very helpful, i am bad at English communication, he gave option to talk in Hindi, also one thing doesn't work in front of him, he said no problem it's ok then countiue to ask diffrent question
Questions remembered
I. First asked me to show id, then github to check collaborator and tell me to download and setup my project using venv asked what venv is? II. Then told me to show some Core functionality and ask to explain how it is working in code, he asked to show almost every functionality. III. Ask me to change code in search query so that if I write some department name , doctor of those department shows up. IV. Asked theory question
Difference between authentication and authorization
What is ORM And some common theory question like MVP and other. He Ask only 4, 5 common theory question.
Blacklist the doctor from the admin panel & try to login as same doctor
Times asked1
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
4
My function was of deleting the doctor, but i named that as 'Blacklist'(in ui). Said Change the name from 'Blacklist' to 'Delete'. I searched & updated.
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
Where you have used cache? Told me add a print statement in the route & asked how much will it be printed in that particular timeout time duration?
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
What are lifecycle hooks? Where you have used & why?
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
Told me to write a js function that can print your name.
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
8
Good luck for your level 2 viva, focus on definitions.
Times asked1
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: Being Clear & confident. Gives time if you are not able to recall. Very very nice proctor. Most important Be humble & talk in respectfull tone.
- Download the project and start running, (proctor will ask to create doctor, then assign availablity, then book appointment for the same availability slot for a patient, etc)
Times asked1
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
4
- Celery tasks demo
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
-- Theory Questions:
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
- vue life-cycle hooks
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
- write a flask route: return name of the user from usertable, given role=admin.
write a simple route to fetch approve application ( application(table), status(column) (approved, pending)?
Times asked1
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
write javascripts function
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: he is good guy ( mahamanus, mahapurush ) is proctor ne meri bahut help he explain karne me ( he say if you are not comfortable you can explain and answer in hindi )
- download the code and run it, how are you running it, why so many command prompts?
Times asked1
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
2
- register a company and show on admin page if its getting approval request or not
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
3
- the total number of companies contain the ones without approval or not, change it to vice versa
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
4
- show sending mail rightnow by modifying date an time
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
- code a simple route
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
- code a js function in notepad
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
- show me csv feature of admin
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: My experience was him was kind of decent was very patient and understanding, my laptop was lagging idk why but he still gave me time to relax and not be nervous so understand the celery part and admin part well and it should go well.
then ask me a logic question that write a print statement below cache.set and then he ask if we run this api in frontend then first time print statement run on terminal but what happens in second time? does it print second time also and if not yhen why?
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
then Set celery monthly task from 1st of month to present time
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
8
then ask about lifecycle hooks
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
9
last Write route to fetch all spot that are occupied and all user in notepad
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: confidently tell your code and If you not confident in some section of your code and not able to explain or any other thing than just say that i am sorry sir, i learn this on bootcamp and TA live session on YouTube and implement it, and now i am not able to recall exact detail.this statement prevents proctor to think that you use llm
Don't remember excatly- mostly one frontend , backend , routes by just seeing db , add frontend code.
Times asked2
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: He is unpredictable , can ask anything, be thorough with your code . Just make sure you know what you are doing and he does give 2nd chance , if you ask ( basically burry you) , be prepare to write code on notebook
Suggested flow1) Concept kya hai?
2) Mere code mein kahan?
3) Example / demo
4) Edge case
Example
# related file: models.py / routes / template
# formula: request → check/auth → DB → render/redirect
Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
- Asked to show model.py and explain what is db.model
Times asked1
Official solution
Simplemodels.py = har table ki class: columns, PK/FK, relationships. Yeh Model layer hai.
Suggested flow1) Classes list karo
2) Har table ka kaam 1 line
3) Relationships (1-M / M-M)
4) Constraints (unique, nullable)
Example
class Lot(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
spots = db.relationship('Spot', backref='lot', lazy=True)
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: My viva was the last slot, he was quite bored and uninterested in giving instructions. It took 20 minutes. He is asking basic questions in code, and to write basic syntax of html and jinja. Be prepared with simple and to the point answers. The proctor is chill and gives you time to think about your answer. If you do not know - say so he will clarify or ask another question. All the best!
Simplemodels.py = har table ki class: columns, PK/FK, relationships. Yeh Model layer hai.
Suggested flow1) Classes list karo
2) Har table ka kaam 1 line
3) Relationships (1-M / M-M)
4) Constraints (unique, nullable)
Example
class Lot(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
spots = db.relationship('Spot', backref='lot', lazy=True)
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: Just be confident , even if u make some mistake while writing the code at the end he guides
Simplemodels.py = har table ki class: columns, PK/FK, relationships. Yeh Model layer hai.
Suggested flow1) Classes list karo
2) Har table ka kaam 1 line
3) Relationships (1-M / M-M)
4) Constraints (unique, nullable)
Example
class Lot(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
spots = db.relationship('Spot', backref='lot', lazy=True)
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
Asked me show the code part where I have prevented booking if the slots are over
Times asked1
Official solution
SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.
Suggested flow1) Register/login user
2) Admin login — CRUD
3) Approval/blacklist
4) Booking/apply + edge case
5) Search
6) Logout
Advice: Had a really nice attitude
I didn't have to say anything
He guided me throughout
Overall he was nice even though I didn't had a functionality in my project
SimpleProject overview: problem → roles → main entities → key flows (register, book, admin approve).
Viva tip1 minute elevator pitch ready rakho, phir demo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
12
Try to book trek1 as user2 and show overbooking protection
Times asked1
Official solution
SimpleProject overview: problem → roles → main entities → key flows (register, book, admin approve).
Viva tip1 minute elevator pitch ready rakho, phir demo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
13
Show code segment where database is made
Times asked1
Official solution
SimpleCode dikhao to pehle related file: models → route → template. Flow explain karte hue lines padho.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: Got the last slot for the day at 10pm and despite that the examiner took a positive approach from the start. He was very patient and helpful where possible. He is sharp towards noticing details like filename accuracy and circular logic or avoidance of answers via fluff content. Be confident and clear in what you say, speak in a flow/rhythm if you don't know, say it; if you know and need a moment, also say it - he gives time to think, this is not a rapid fire contest. Good luck
Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
15
What is decorator
Times asked1
Official solution
Simplelogin_required jaisa decorator protected routes pe: session nahi to login redirect.
Example
def login_required(fn):
@wraps(fn)
def wrapper(*a, **k):
if 'user_id' not in session:
return redirect(url_for('auth.login'))
return fn(*a, **k)
return wrapper
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: Got last slot for the day, and examiner was a little tired and despite that he was positive in his approach, very patient, and and helpful where possible. He's sharp as far as noticing details like filenames but generally forthcoming. Be confident in what you say, talk in a flow/rhythm instead of mumbling. If you need a moment, ask for it - examiner will give you time to think, it's not a rapid fire examination.
SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.
Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
2
Asked to show demo of project by performing some actions like registering company, registering student, creating drive and applying to that drive as a student
Times asked1
Official solution
SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.
Suggested flow1) Register/login user
2) Admin login — CRUD
3) Approval/blacklist
4) Booking/apply + edge case
5) Search
6) Logout
SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
3
My function was of deleting the doctor, but i named that as 'Blacklist'(in ui). Said Change the name from 'Blacklist' to 'Delete'. I searched & updated.
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
@cache.cached(timeout=50, query_string=True)
@app.route('/api/shows')
def shows():
return jsonify([s.serialize() for s in Show.query.all()])
Project example: Admin dashboard counts / venues list cache. Create/update/delete ke baad cache.delete('venues').
Viva tipprint('DB queried') function ke andar laga ke miss/hit demo karo — hit pe print nahi chalega.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
What are lifecycle hooks? Where you have used & why?
Times asked2
Official solution
SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.
created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.
Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.
Suggested flow1) Concept kya hai?
2) Mere code mein kahan?
3) Example / demo
4) Edge case
Example
# related file: models.py / routes / template
# formula: request → check/auth → DB → render/redirect
Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: Being Clear & confident. Gives time if you are not able to recall. Very very nice proctor. Most important Be humble & talk in respectfull tone.
function validateEmail(e) {
return e.includes('@') && e.includes('.');
}
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: he is good guy ( mahamanus, mahapurush ) is proctor ne meri bahut help he explain karne me ( he say if you are not comfortable you can explain and answer in hindi )
Viva tipViva mein MailHog/inbox dikhao. Port 587 TLS common; local pe MailHog 1025.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
- authorization and authentication
Times asked1
Official solution
SimpleAuthentication: tu kaun hai? (login). Authorization: tujhe permission hai? (role check).
Example
# auth
if check_password_hash(user.password, pwd):
session['user_id'] = user.id
# authz
if user.role != 'admin':
abort(403)
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
- redis
Times asked1
Official solution
SimpleRedis fridge pe sticky note hai — poori kitchen (database) kholne ki zarurat nahi.
Redis in-memory key-value store hai. Data RAM mein rehta hai, isliye disk wale SQLite/Postgres se kai guna tez.
MAD2 mein Redis do kaam karta hai:
1) Cache — same venue/show/dashboard JSON baar-baar DB se mat nikaalo.
2) Celery message broker — Flask task queue mein daalta hai, worker uthata hai.
Source of truth database hi hai. Redis band ho to cache miss ho jaata hai aur Celery queue ruk sakti hai. Crash pe cache gayab ho sakta hai — isliye important data sirf Redis mein mat rakho.
Project example: GET /api/venues pehle Redis dekho. Miss pe SQLAlchemy query, phir SET with timeout. Celery worker Redis list se daily reminder uthata hai.
Viva tipCache ke liye db=1, broker ke liye db=0 rakhna smart hai taaki keys mix na hon. Viva mein redis-cli ping → PONG dikhana strong hai.
@app.route('/ping')
def ping():
return jsonify(ok=True)
@app.route('/even/<int:n>')
def even(n):
return 'even' if n % 2 == 0 else 'odd'
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
9
- code a js function in notepad
Times asked2
Official solution
SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
10
- show me csv feature of admin
Times asked2
Official solution
SimpleExported CSV download folder/MailHog se open — columns verify. Celery job ke baad file path dikhao.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: My experience was him was kind of decent was very patient and understanding, my laptop was lagging idk why but he still gave me time to relax and not be nervous so understand the celery part and admin part well and it should go well.
SimpleExaminer submitted ZIP chahta hai, local extra changes nahi.
Portal se ZIP download → extract → venv → pip install -r requirements.txt → flask run / python app.py.
Checksum maange to hash match karke dikhao. Camera/OPPE setup unke instructions.
Linux/Mac: paths, gunicorn; Windows paths alag ho to relative paths use karo.
Do browsers: admin + user parallel demo impressive lagta hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
2
Cdn vs cli
Times asked3
Official solution
SimpleCDN = Vue script tag se, jaise pen drive. CLI/Vite = poori factory (SFC, npm, bundle).
CDN: no build, chhote apps, exam PC pe Node nahi to bhi chal. Weak: no .vue compile, 3rd-party cache, scale/team.
CLI/Vite: Single File Components, env, code-split, production dist/. Scalable.
Examiner 'which + why' — jo use kiya wahi justify, doosra naam rato mat.
Example
<!-- CDN -->
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
# Vite
npm run dev
npm run build
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
@cache.cached(timeout=50, query_string=True)
@app.route('/api/shows')
def shows():
return jsonify([s.serialize() for s in Show.query.all()])
Project example: Admin dashboard counts / venues list cache. Create/update/delete ke baad cache.delete('venues').
Viva tipprint('DB queried') function ke andar laga ke miss/hit demo karo — hit pe print nahi chalega.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
Phir model.py ki random line ko explain kro
Times asked2
Official solution
Simplemodels.py = har table ki class: columns, PK/FK, relationships. Yeh Model layer hai.
Suggested flow1) Classes list karo
2) Har table ka kaam 1 line
3) Relationships (1-M / M-M)
4) Constraints (unique, nullable)
Example
class Lot(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
spots = db.relationship('Spot', backref='lot', lazy=True)
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
7
Lazy loading
Times asked2
Official solution
Simplelazy loading: related objects kab load hon. lazy=True default (access pe query). joined/eager pehle se join.
Viva tipAlgo HS256. Secret env var. jwt.io pe payload dikhao, secret public site pe mat paste.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
6
- lifecycle hooks in Vue with examples
Times asked1
Official solution
SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.
created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.
Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
first he ask what i use session based authentication or token based, then demo of authentication and ask me to show and explain where is this authentication happing in code.
Times asked1
Official solution
SimpleMAD1 mein usually session-based auth: login pe session['user_id'], har request pe verify.
Example
session['user_id'] = user.id
uid = session.get('user_id')
user = User.query.get(uid)
Viva tipSECRET_KEY set karo warna session insecure. logout pe session.clear().
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
5
then demo of celery export
Times asked2
Official solution
SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.
Suggested flow1) Register/login user
2) Admin login — CRUD
3) Approval/blacklist
4) Booking/apply + edge case
5) Search
6) Logout
then ask me a logic question that write a print statement below cache.set and then he ask if we run this api in frontend then first time print statement run on terminal but what happens in second time? does it print second time also and if not yhen why?
Times asked2
Official solution
Simpleprint after set miss pe hi: hit pe function body skip. Yahi demo examiner chahta hai.
Redis in-memory key-value store hai — fridge pe sticky note, poori kitchen (SQL database) har baar mat kholo.
MAD2 mein Redis do kaam: (1) cache — same venues/shows/dashboard JSON baar-baar DB se nahi (2) Celery broker — Flask task queue mein daalta hai, worker uthata hai.
Flow: cache.get(key) → hit pe return, miss pe SQLAlchemy + SET with timeout. Admin write ke baad cache.delete, warna stale list.
Source of truth database hi hai. Redis crash/band = cache miss (app chalni chahiye) + queue ruk sakti hai. Important bookings sirf Redis mein mat rakho.
Viva tipWorker + Redis bina Beat ke user-triggered chalega. Scheduled jobs ke liye Beat bhi chahiye.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
8
then ask about lifecycle hooks
Times asked2
Official solution
SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.
created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.
Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.
@app.route('/ping')
def ping():
return jsonify(ok=True)
@app.route('/even/<int:n>')
def even(n):
return 'even' if n % 2 == 0 else 'odd'
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: confidently tell your code and If you not confident in some section of your code and not able to explain or any other thing than just say that i am sorry sir, i learn this on bootcamp and TA live session on YouTube and implement it, and now i am not able to recall exact detail.this statement prevents proctor to think that you use llm
Don't remember excatly- mostly one frontend , backend , routes by just seeing db , add frontend code.
Times asked2
Official solution
SimpleMAD1 frontend usually Jinja templates + HTML/CSS/Bootstrap (+ thoda JS). MAD2 pe Vue ho to clearly bolo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
Advice: He is unpredictable , can ask anything, be thorough with your code . Just make sure you know what you are doing and he does give 2nd chance , if you ask ( basically burry you) , be prepare to write code on notebook
Project example: Admin export venues. MailHog attach ya file open.
Viva tipNetwork tab mein job trigger API dikhao, phir MailHog/file open karke columns verify karo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
11
Demonstrate Celery export functionality.
Times asked1
Official solution
Simplecsv celery trigger. Explain export theatres CSV which library. Show CSV export open file.
csv module standard.
Celery Python ka distributed task queue — HTTP request ko 10s email/CSV ke liye mat rokna.
Flow: Flask .delay() → Redis broker → Worker execute. Beat alag process hai (clock): crontab padhke due time pe queue mein daalta hai. Beat khud mail nahi bhejta; Worker haath hai.
MAD2 typical: daily reminder (Beat), monthly report (Beat), user Export CSV (button, Beat nahi). JS async/await browser event loop hai, Celery server-side process — mix mat karo.
Demo: tin terminals — redis-server, celery worker, celery beat — plus Flask. MailHog :8025 inbox. Result backend se task SUCCESS poll optional.
Project example: export task + sample file.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
12
Demonstrate scheduled email functionality by changing the Celery schedule to the current time.
Authentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password hash check. Success pe JWT/session. Galat credentials = 401.
Authorization: uske baad role. Admin hi venue/lot delete kare, student nahi = 403 (logged in ho, allowed nahi).
MAD2: POST /api/login = authentication. @jwt_required identity. @roles_required('admin') ya Vue v-if="isAdmin" = authorization. Frontend hide sirf UX — asli deny backend pe.
Validation alag: form sahi bhara (email format, age 18+). Woh identity prove nahi karta. Password store hash (Werkzeug), JWT payload padha ja sakta hai isliye secret mat daalo.
Project example: 4 files.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
16
Show where tokens are generated.
Times asked1
Official solution
SimpleLogin/register success return create_access_token. Show generated token Network + LS.
Where tokens generated.
Authentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password hash check. Success pe JWT/session. Galat credentials = 401.
Authorization: uske baad role. Admin hi venue/lot delete kare, student nahi = 403 (logged in ho, allowed nahi).
MAD2: POST /api/login = authentication. @jwt_required identity. @roles_required('admin') ya Vue v-if="isAdmin" = authorization. Frontend hide sirf UX — asli deny backend pe.
Validation alag: form sahi bhara (email format, age 18+). Woh identity prove nahi karta. Password store hash (Werkzeug), JWT payload padha ja sakta hai isliye secret mat daalo.
Project example: login response.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
17
Show where tokens are sent from the frontend.
Times asked1
Official solution
SimpleNetwork request Headers Authorization Bearer. Where sent from frontend.
Show tokens sent.
Authentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password hash check. Success pe JWT/session. Galat credentials = 401.
Authorization: uske baad role. Admin hi venue/lot delete kare, student nahi = 403 (logged in ho, allowed nahi).
MAD2: POST /api/login = authentication. @jwt_required identity. @roles_required('admin') ya Vue v-if="isAdmin" = authorization. Frontend hide sirf UX — asli deny backend pe.
Validation alag: form sahi bhara (email format, age 18+). Woh identity prove nahi karta. Password store hash (Werkzeug), JWT payload padha ja sakta hai isliye secret mat daalo.
Kaunsi routes, timeout, key_prefix, query_string. POST pe nahi.
print after set sirf miss. Timeout chhota karke expiry.
Redis in-memory key-value store hai — fridge pe sticky note, poori kitchen (SQL database) har baar mat kholo.
MAD2 mein Redis do kaam: (1) cache — same venues/shows/dashboard JSON baar-baar DB se nahi (2) Celery broker — Flask task queue mein daalta hai, worker uthata hai.
Flow: cache.get(key) → hit pe return, miss pe SQLAlchemy + SET with timeout. Admin write ke baad cache.delete, warna stale list.
Source of truth database hi hai. Redis crash/band = cache miss (app chalni chahiye) + queue ruk sakti hai. Important bookings sirf Redis mein mat rakho.
Project example: resources list GET cached. create_venue delete key.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
19
Add a print() statement after cache.set() and explain why it executes only on the first request (cache miss) and not on subsequent requests (cache hit).
Times asked1
Official solution
SimpleHit = Redis ke paas jawab already hai. Miss = pehle DB se lana padega.
Hit pe database queried nahi hota — yahi examiner prove karwana chahta hai.
Typical flow:
1) cache.get(key)
2) mila to return (hit)
3) nahi mila to query + cache.set + return (miss)
Timeout ke baad key expire = next request phir miss. cache.clear() sab hataata hai, cache.delete(key) sirf ek route.
Example
data = cache.get('venues')
if data:
return data # hit
data = Venue.query.all() # miss
cache.set('venues', data, timeout=30)
return data
Project example: Pehli GET /api/venues — terminal mein SQL/print. Doosri GET turant — koi DB log nahi.
Viva tipHit pe database queried nahi hota. print() after set sirf miss pe chalega.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
20
Explain a random line from models.py.
Times asked1
Official solution
SimpleRandom line: Column type nullable FK relationship. 1 sentence each keyword. Explain random line models.py.
Stay calm.
ORM objects ko tables se map karta hai — raw SQL kam. SQLAlchemy MAD2 default.
class User(db.Model) + Column + relationship. query.filter_by / db.session.get. Fayda: portable SQLite→Postgres, injection se safer. Nuksaan: N+1, complex SQL.
SQLite file, zero server — course friendly. Postgres scale. Relationships: FK, backref, lazy/joinedload, cascade on delete. Constraints unique/not null integrity.
Bookings source of truth DB, Redis cache copy.
Project example: Don't skip imports either — db.Model.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
21
Show where the blacklist/approval logic is implemented.
Times asked1
Official solution
SimpleFlag + login reject. Where implemented approval/blacklist.
Demo blacklist staff login fail.
Examiner 2 cheezein: simple desi line + tumhare project ki exact file.
Authentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password hash check. Success pe JWT/session. Galat credentials = 401.
Authorization: uske baad role. Admin hi venue/lot delete kare, student nahi = 403 (logged in ho, allowed nahi).
MAD2: POST /api/login = authentication. @jwt_required identity. @roles_required('admin') ya Vue v-if="isAdmin" = authorization. Frontend hide sirf UX — asli deny backend pe.
Validation alag: form sahi bhara (email format, age 18+). Woh identity prove nahi karta. Password store hash (Werkzeug), JWT payload padha ja sakta hai isliye secret mat daalo.
Project example: Bearer header. 401 pe redirect login.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
25
Authentication vs Authorization.
Times asked10
Official solution
SimpleAuthentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password check karke prove karte ho ki tum genuine user ho. Success pe session/token milta hai.
Authorization: uske baad role check. Admin hi parking lot / venue / drive delete kar sakta hai, normal user nahi.
MAD2 mein yeh alag layers hain: login API = authentication (JWT milta hai). @roles_required('admin') ya Vue v-if="isAdmin" = authorization.
Validation alag cheez hai (form sahi bhara hai ya nahi, jaise age 18+). Authentication identity hai, authorization permission, validation input quality.
Example
# Authentication
if user and check_password_hash(user.password, form_password):
token = create_access_token(identity=user.id)
# Authorization
if current_user.role != 'admin':
abort(403) # logged in ho, lekin allowed nahi
Project example: Student login = authentication. Student admin dashboard nahi khol sakta = authorization. Frontend button hide sirf UX hai — asli check backend pe hona chahiye.
Viva tip401 = not logged in / bad token. 403 = logged in, role galat. Examiner yeh difference bahut poochta hai.
Baar-baar same expensive kaam (DB query, counting bookings) mat karo. Result Redis jaise store mein timeout ke saath rakh do.
Cache hit: key mil gayi, DB skip. Cache miss: DB se lao, SET karo, return karo.
Tradeoff: speed vs stale data. Admin naya venue add kare aur cache 50s ka ho to user purani list dekh sakta hai — isliye write pe invalidation zaroori hai.
4-line formula: input kahan se aaya, auth/validation kaunsa, DB ya cache ya Celery, kya return.
Related mix mat karo — cache ≠ Celery, authentication ≠ authorization, v-if ≠ v-show, Beat ≠ Worker. Follow-up ke liye ek difference ready rakho.
Project example: SQL echo off on second GET.
Project example: SQL echo off on second GET.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
29
What is Redis?
Times asked21
Official solution
SimpleRedis fridge pe sticky note hai — poori kitchen (database) kholne ki zarurat nahi.
Redis in-memory key-value store hai. Data RAM mein rehta hai, isliye disk wale SQLite/Postgres se kai guna tez.
MAD2 mein Redis do kaam karta hai:
1) Cache — same venue/show/dashboard JSON baar-baar DB se mat nikaalo.
2) Celery message broker — Flask task queue mein daalta hai, worker uthata hai.
Source of truth database hi hai. Redis band ho to cache miss ho jaata hai aur Celery queue ruk sakti hai. Crash pe cache gayab ho sakta hai — isliye important data sirf Redis mein mat rakho.
Project example: GET /api/venues pehle Redis dekho. Miss pe SQLAlchemy query, phir SET with timeout. Celery worker Redis list se daily reminder uthata hai.
Viva tipCache ke liye db=1, broker ke liye db=0 rakhna smart hai taaki keys mix na hon. Viva mein redis-cli ping → PONG dikhana strong hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
30
What is Celery?
Times asked19
Official solution
SimpleCelery = background naukri. HTTP request ko 10 second email bhejne ke liye mat rokna.
Distributed task queue: aap function ko abhi nahi, worker process mein later/retry/schedule pe chalaate ho.
Celery Python ka distributed task queue — HTTP request ko 10s email/CSV ke liye mat rokna.
Flow: Flask .delay() → Redis broker → Worker execute. Beat alag process hai (clock): crontab padhke due time pe queue mein daalta hai. Beat khud mail nahi bhejta; Worker haath hai.
MAD2 typical: daily reminder (Beat), monthly report (Beat), user Export CSV (button, Beat nahi). JS async/await browser event loop hai, Celery server-side process — mix mat karo.
Demo: tin terminals — redis-server, celery worker, celery beat — plus Flask. MailHog :8025 inbox. Result backend se task SUCCESS poll optional.
SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.
created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.
Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.
Repo → Settings → Collaborators → instructor added.
Commits: git log / GitHub History — regular commits better, ek dum 1 commit suspicious.
README + report mein AI usage likha hona chahiye agar use kiya.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
3
Download the project from the Viva Portal.
Times asked7
Official solution
SimpleExaminer submitted ZIP chahta hai, local extra changes nahi.
Portal se ZIP download → extract → venv → pip install -r requirements.txt → flask run / python app.py.
Checksum maange to hash match karke dikhao. Camera/OPPE setup unke instructions.
Linux/Mac: paths, gunicorn; Windows paths alag ho to relative paths use karo.
Do browsers: admin + user parallel demo impressive lagta hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
4
Set up the project using a virtual environment (venv).
Times asked1
Official solution
Simplevenv isolated Python environment — project ke packages system Python se mix nahi hote.
1) Data chahiye to models.py mein column/relationship + DB update (ALTER / migrate / create_all).
2) Route: GET pe form/page, POST pe request.form se save, flash + redirect.
3) Template: input name=... Jinja se {{ obj.field }} display.
4) Rule: duplicate, range, role check backend pe.
Yeh feature demo hai. Account ready rakho, steps bol ke dikhao.
Role ke hisaab login → action (create/approve/book) → DB/UI pe result → edge case (fail when slots=0 / blacklisted).
Do browser windows: admin + user. Search/filter alag se dikhao.
Agar feature nahi hai to sach bolo aur 2 minute mein kaise add karoge (query + template) explain karo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
9
Demonstrate slot/availability validation (e.g., second user cannot book when slots are full).
Times asked1
Official solution
SimpleValidation galat data rok ti hai — frontend turant, backend must.
pwd = request.form.get('password','')
if len(pwd) < 8 or not re.search(r'[A-Z]', pwd) or not re.search(r'[0-9]', pwd):
flash('Weak password')
Haan, regex se password rules ho sakte hain.
Age 18-99, date >= today, slots <= 30 and > 0, confirm password == password, email '@' .
Duplicate username: User.query.filter_by(email=email).first() or unique=True catch IntegrityError.
Past date: if date < date.today(): reject. Negative slots: if slots < 0: reject; book pe available > 0 check.
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
10
Demonstrate profile editing.
Times asked1
Official solution
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
11
Demonstrate search functionality.
Times asked3
Official solution
SimpleSearch box GET form, backend query filter, results template mein.
Jinja: {{ results|length }} matches. Empty: 'No results'.
JS-only filter: saara data pehle load, client filter — chhote lists. Bada data: server search.
Search generally GET (shareable URL). Count: len(results) ya db.func.count.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
12
Explain how each demonstrated feature works in the code.
Times asked1
Official solution
SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.
Suggested flow
1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
Crash ho to debug calmly: terminal error, typo, DB path.
Mandatory features skip mat karna — examiner list tick karta hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
13
Explain models.py.
Times asked21
Official solution
Simplemodels.py har table ki class hai — columns, PK/FK, relationships. Yeh Model layer hai.
Viva mein file khol ke bolo:
1) Kaunsi classes/tables hain (User, Role-specific, Booking...)
2) Har table ka kaam 1 line
3) Relationships: 1-1 / 1-M / M-M, backref, cascade, lazy
4) Constraints: unique email, nullable, default status
Example skeleton
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True, nullable=False)
role = db.Column(db.String(20), default='user')
bookings = db.relationship('Booking', backref='user', cascade='all, delete-orphan')
ER diagram: rectangles entities, lines relationships, PK/FK mark. Schema = yahi structure.
Tables create: db.create_all() ya migrations. SQLite file SQL viewer se dikha sakte ho.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
14
Show the code responsible for displaying data on the dashboard.
Times asked1
Official solution
Yeh feature demo hai. Account ready rakho, steps bol ke dikhao.
Role ke hisaab login → action (create/approve/book) → DB/UI pe result → edge case (fail when slots=0 / blacklisted).
Do browser windows: admin + user. Search/filter alag se dikhao.
Agar feature nahi hai to sach bolo aur 2 minute mein kaise add karoge (query + template) explain karo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
15
Explain the implementation of a specific functionality in the code.
Times asked1
Official solution
Examiner code pe ungli rakh ke poochta hai — panic mat karo, 4-line formula bolo.
1) Yeh file/line kya role hai (model / route / template / config)?
2) Input kahan se aata hai (form, URL <id>, session, JSON)?
3) DB pe kya query/write?
4) Output kya (render_template / redirect / jsonify)?
Example
@app.route('/book/<int:id>', methods=['POST']) — logged-in user session se, trek id URL se, Booking add, slots--, redirect history.
Unknown line: imports (request, url_for, flash), decorators, if checks, commit — har keyword ka reason ready rakho.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
16
Modify both frontend and backend code for a feature.
Times asked1
Official solution
SimpleFrontend user jo dekhta/click karta hai, Backend server logic + database.
Frontend: HTML, CSS, Bootstrap, Jinja templates, thoda JS. Browser pe chalta hai.
Backend: Flask routes, SQLAlchemy, session, validation. Python server pe.
Data flow: form POST → Flask request.form → DB save → render_template/redirect → HTML dikha.
MAD1 typical stack: Flask + Jinja + SQLAlchemy + SQLite + Bootstrap.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
17
What is ORM?
Times asked49
Official solution
SimpleORM = Object Relational Mapping. Database tables ko Python classes/objects se map karta hai, raw SQL kam likhni padti hai.
Bina ORM: cursor.execute('SELECT * FROM user WHERE id=?', [5])
ORM se: User.query.get(5) ya db.session.get(User, 5)
Example model
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(120), unique=True)
FaydePython mein soch sakte ho, SQL injection se protection (parameterized), relationships easy, DB switch thoda aasan.
Nuksaancomplex queries slow/abstract, seekhne ki layer extra, kabhi raw SQL phir bhi chahiye.
MAD1: SQLAlchemy (Flask-SQLAlchemy). Tables db.create_all() ya migrations se banti hain.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
18
Difference between filter() and filter_by().
Times asked2
Official solution
Simplefilter_by simple keyword arguments, filter full SQL-style conditions.
SimpleLogin GET form dikhata hai, POST credentials check karke session set karta hai.
@app.route('/login', methods=['GET','POST'])
def login():
if request.method == 'POST':
u = User.query.filter_by(email=request.form.get('email')).first()
if u and check_password_hash(u.password, request.form.get('password')):
if getattr(u, 'blacklisted', False):
flash('Blocked'); return redirect(url_for('login'))
session['user_id'] = u.id
session['role'] = u.role
return redirect(url_for('dashboard'))
flash('Invalid')
return render_template('login.html')
Logout: session.clear(); redirect login. Incognito alag cookie jar — logged out dikhega.
Single login page: role se redirect alag dashboards.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
20
Write a Flask route to check whether a number is even or odd.
Times asked1
Official solution
SimpleURL parameters se numbers lo, calculate karke return/render.
@app.route('/sum/<int:a>/<int:b>')
def add(a, b):
return f'Hello, sum is {a+b}'
Product: a*b. Square: n*n. Even/odd: 'even' if n%2==0 else 'odd'.
Form se: request.form.get('a', type=int). Background color even/odd:
color = 'green' if n%2==0 else 'red'
return render_template('page.html', color=color)
CSS: body { background: {{ color }}; }
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
21
Write basic Flask code.
Times asked1
Official solution
Simple Hello World — notepad mein yeh likh ke run karke dikhao:
name attribute server pe key ban'ti hai: request.form['email']. id JS/CSS, value default/dikhta hua text.
action URL. method GET/POST. enctype file upload pe multipart.
required frontend empty submit rokta hai (backend phir bhi check).
Jinja: {{ results|length }} matches. Empty: 'No results'.
JS-only filter: saara data pehle load, client filter — chhote lists. Bada data: server search.
Search generally GET (shareable URL). Count: len(results) ya db.func.count.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
25
Difference between PUT and POST.
Times asked6
Official solution
SimplePOST nayi cheez create karta hai, PUT existing cheez ko replace/update karta hai.
POST /books → naya book add. Har baar naya ID banega. Idempotent nahi — 2 baar POST = 2 records.
PUT /books/5 → id=5 wale book ko poora update. Same PUT dubara bhejo to same result (idempotent).
PUT se create bhi ho sakta hai (agar ID client decide kare), lekin REST convention: create = POST, replace = PUT, partial = PATCH.
HTML <form> PUT nahi bhejta, isliye Flask apps mein edit pe bhi POST use hota hai. Examiner ko yeh reason clearly bolo.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
26
What is an API?
Times asked8
Official solution
SimpleAPI = Application Programming Interface — do systems predefined rules se baat karti hain. REST API HTTP + JSON use karti hai.
Controller/route HTML bhi return kar sakta hai. REST API generally JSON return karti hai, frontend alag ho (Vue/Postman).
Example
@app.route('/api/users/<int:id>')
def get_user(id):
u = User.query.get_or_404(id)
return jsonify(id=u.id, name=u.name)
MAD1 HTML apps mein 'API' kabhi-kabhi routes ko hi keh dete hain. Agar Vue nahi to bolo: server-rendered Flask, JSON APIs optional.
Boolean return: technically jsonify(True) ho sakta hai, lekin meaningful JSON object better. Flask view None return kare to error.
Test: Postman se GET/POST.
Parsing: request.get_json() body se, request.args query se.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
27
Difference between Authentication and Authorization.
Times asked20
Official solution
SimpleAuthentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"
Authentication: login. Username + password check karke prove karte ho ki tum genuine user ho. Success pe session/token milta hai.
Authorization: uske baad role check. Admin hi parking lot delete kar sakta hai, normal user nahi.
Example (Flask):
# Authentication
if user and check_password_hash(user.password, form_password):
session['user_id'] = user.id
# Authorization
if session.get('role') != 'admin':
abort(403) # logged in ho, lekin allowed nahi
Project example: student login = authentication. Student admin dashboard nahi khol sakta = authorization.
Validation alag cheez hai (form sahi bhara hai ya nahi, jaise age 18+).
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
28
Explain MVC/MVP architecture.
Times asked1
Official solution
SimpleMVC = Model-View-Controller. Code ko 3 hisson mein baant ta hai taaki mix na ho.
Model: data + DB. models.py — User, Trek, Booking classes.
View: jo user dekhta hai. templates/*.html + Jinja.
Controller: beech ka logic. routes / app.py — request lo, model se data, view ko do.
Example flow (register):
Browser form POST → Controller register() → User model save → redirect → View dashboard.html
Draw: Browser → Controller → Model → DB, phir Controller → View → Browser.
ORM na ho to bhi MVC ho sakta hai — Model raw SQL functions ho sakte hain. Structure matter karta hai, library nahi.
MVP/MVVM doosri architectures hain; MAD1 mein MVC expected hai.
Community answers
No replies yet
No community answers yet
Open My solution to be the first to share yours.
My solution
Not submitted yet
29
What is Git?
Times asked3
Official solution
SimpleVCS history track karta hai, Git ek distributed VCS hai.
VCS: kaun kab kya change kiya, rollback, branches. Example: Git, SVN.
Git distributed: har developer ke paas poori copy (commits) hoti hai. Central GitHub sirf remote hosting hai, lekin Git ka model distributed hai.
SVN centralized: bina server ke history nahi.