SQL Noir – अपराध सुलझाकर SQL सीखें
(sqlnoir.com)- SQLNoir एक स्टोरी-आधारित SQL लर्निंग गेम है, जिसमें केस फाइल खोलकर और डेटाबेस क्वेरी करके सुराग खोजे जाते हैं
- हर केस में ब्रीफ, डेटाबेस schema, और बिल्ट-इन SQL एडिटर मिलता है, जिससे क्वेरी चलाकर संदिग्धों और सुरागों की जांच की जा सकती है
- filtering, join, aggregation, और subquery जैसे वास्तविक SQL patterns का अभ्यास केस सुलझाने की प्रक्रिया में बार-बार किया जा सकता है
- बिना अलग installation या environment setup के तुरंत शुरू किया जा सकता है, और XP व सुलझाए गए केसों की संख्या से प्रगति देखी जा सकती है
- शुरुआती केस बुनियादी बातें सिखाते हैं, जबकि उन्नत केस hierarchical join और जटिल conditions की मांग करते हैं, इसलिए यह developers, data analysts, students, और instructors के लिए उपयुक्त है
केस सुलझाते हुए SQL सीखें
- SQLNoir उपयोगकर्ता को स्टोरी-केंद्रित जांच में शामिल करता है और केस ब्रीफ के साथ डेटाबेस schema भी देता है
- उपयोगकर्ता बिल्ट-इन एडिटर में SQL queries चलाकर tables को जोड़ते हैं, संदिग्धों को बाहर करते हैं, और alibi की पुष्टि करते हैं
- केस के प्रवाह में अभ्यास किए जाने वाले SQL patterns इस प्रकार हैं
- filtering
- join
- aggregation
- subquery
- बिना किसी अलग installation या setup के केस फाइल खोलकर तुरंत डेटा की जांच शुरू की जा सकती है
प्रगति और सीखने वाले उपयोगकर्ता
- XP और सुलझाए गए केसों की संख्या प्रगति दिखाती है
- शुरुआती केस SQL की बुनियाद सिखाने के लिए बनाए गए हैं, जबकि उन्नत केस hierarchical join और अधिक जटिल conditions की मांग करते हैं
- यह निम्न उपयोगकर्ताओं के लिए उपयुक्त है
- वे developers जो SQL basics और joins का हाथों-हाथ अभ्यास करना चाहते हैं
- वे data analysts जो वास्तविक query scenarios के साथ interview की तैयारी कर रहे हैं
- वे students जो सूखी पाठ्यपुस्तकों की बजाय कहानी और तुरंत feedback के साथ तेज़ी से सीखते हैं
- वे instructors जो ऐसे SQL practice assignments खोज रहे हैं जिनमें learners से environment setup की जरूरत न हो
1 टिप्पणियां
Hacker News की राय
मजेदार है और पसंद आया
कुछ बातें जोड़नी हों तो, पहले केस में submit इनपुट बॉक्स में नाम डालना है या suspect ID डालनी है, यह साफ नहीं है
आउटपुट रिजल्ट में “Notes में कॉपी करें” बटन हो तो अच्छा होगा, और कौन-से functions उपलब्ध हैं या कौन-सा SQL dialect है, इस पर documentation भी हो तो बेहतर होगा
छोटे प्रोजेक्ट्स को सच में solve करते हुए सीखना कहीं ज्यादा आसान होता है, इसलिए यह तरीका काफी valuable लगता है
user के तौर पर, चूंकि यह detective game है, मैंने स्वाभाविक रूप से अनुमान लगाया कि “suspect” का नाम चाहिए
वाकई मजेदार
एक छोटी improvement के तौर पर, SQLite database को सीधे download करके अपनी पसंद की app में queries चलाने की सुविधा हो, और site सिर्फ briefing, notes और submission के लिए इस्तेमाल हो सके, तो अच्छा होगा
साथ ही “SQL learning” के लिए कहा जा रहा है तो शायद थोड़ी और guidance या example queries होनी चाहिए
अभी की हालत में, अगर SQL नहीं जानते तो क्या करना है इसमें पूरी तरह भटक जाना आसान लगता है; यह शानदार tool है, लेकिन learning tool के रूप में अभी पूरी तरह फिट नहीं बैठता
ऐसे क्षेत्र में अच्छा addition है जहां options ज्यादा नहीं हैं
जो याद आते हैं वे हैं SQL Island(https://sql-island.informatik.uni-kl.de) और SQL Murder Mystery(https://mystery.knightlab.com); SQL Noir का तरीका बाद वाले के ज्यादा करीब है—एक non-directed standalone adventure
मैं SQL game engine SQLab बना रहा हूं, जिससे किसी भी base database पर exercises जोड़कर directed standalone adventure बनाया जा सकता है: https://github.com/laowantong/sqlab
database dump download करके अभी MySQL, SQLite, Postgres में किसी भी admin interface से खेला जा सकता है
उसी page पर French students के लिए design की गई एक लंबी police investigation का link भी है, और अगर आप teacher या researcher हैं, तो SQLab के principles यहां समझाए गए हैं: https://arxiv.org/abs/2410.16120
यहां आए दूसरे projects भी अच्छे हैं
मैं भी SQL Game Console और SQL Game Editor projects जोड़ता हूं, जिनसे students browser में अपना SQL escape game बना सकते हैं: https://eskuel.de
classroom में test करना मजेदार रहा, और अभी यह सिर्फ German support करता है
example game: https://eskuel.de/zoo/
बचपन में देखे MathNet की याद आ गई
यह Dragnet-style की educational police investigation series थी, जिसमें दो investigators holster की तरह calculators साथ रखते थे
https://en.m.wikipedia.org/wiki/Mathnet
https://youtu.be/vNhBq3kjq_Q?t=2011
पसंद आया, और style अलग भी है और cool भी
SQL सीखने, practice करने और फिर से याद करने के मजेदार तरीके की शुरुआत जैसा लगता है
कुछ बातें: tabs के बिना एक single workspace हो तो अच्छा होगा। बार-बार tabs के बीच जाना पड़ता है
पिछली SQL queries और results save कर सकें तो अच्छा होगा; अभी मैं results को notes में copy कर रहा था
जैसे-जैसे यह ज्यादा complex होगा, यह feature ज्यादा अहम लगने लगेगा
अभी-अभी side-by-side view implement किया है, जिससे 2 tabs एक साथ देखे जा सकते हैं; उम्मीद है मदद मिलेगी
जैसा दूसरे users ने suggest किया, आप queries को notes में save भी कर सकते हैं, या editor में comment करके रख सकते हैं
बस hat चाहिए, और “सिर्फ facts बताइए, madam” कुछ बार बोल दूं तो scene पूरा हो जाएगा
idea अच्छा है, लेकिन UI immersion लगभग नहीं है
immersion बढ़ाने के लिए autocomplete, wide screen पर schema और queries को साथ देखने की सुविधा, और table names व column names को एक click में आसानी से copy करने की सुविधा चाहिए
खासकर table names तो select तक नहीं होते
सिर्फ पहले से run की गई query को overwrite करने के बजाय, run की गई query के ऊपर या नीचे नई queries लगातार add कर सकें तो अच्छा होगा
क्योंकि यह immersion घटाता है और खुद से याद करने वाली चीजों को भी कम कर देता है
New Game Plus में enable हो तो शायद ठीक हो
अभी-अभी दो अलग tabs को साथ खोलने वाला Side by Side view और table names copy करने का button implement किया है
command-/से code blocks को comment कर पाना सच में बहुत useful होगावाकई अच्छा idea है, और case solve करने में मजा आया
junior programmers के लिए शायद comic version मददगार हो
SQL editor कभी-कभी अजीब व्यवहार करता है, जिससे सही तरह से लिखना मुश्किल हो जाता है
editor में comments add करने की कोशिश करने पर अजीब व्यवहार होता है
reproduce करने का तरीका: कई lines लिखें और फिर हर line के आगे
--लगाकर एक-एक line comment करेंउदाहरण के लिए
select i.*, s.*,from interviews i,join suspects s,on s.id = i.suspect_idलिखने के बाद जैसे हीfrom interviews iके आगे भी--लगाते हैं, वह line पिछली line पर चली जाती है और syntax highlighting टूट जाती हैलगता है अभी-अभी यह bug fix कर दिया
university के दिनों में instructor ने SQL practice के लिए इससे मिलता-जुलता crime-solving minigame link किया था, यह याद है
मैं काफी immersed हो गया था, यहां तक कि सबसे efficient one-line solution खोजने तक पहुंच गया था
बनाने के लिए धन्यवाद, और SQL सीखना चाहने वालों को शायद मैं यह भेजूंगा
काफी मजेदार है, मैंने दो free mysteries solve कीं और उन्हें solve करने का मजा आया
छोटी-सी कमी यह लगी कि SQL editor comments support करे तो अच्छा होगा
नई query run करने से पहले पुरानी query को comment करके history छोड़ी जा सके, तो खासकर जब वही query फिर से run करनी हो, यह सुविधाजनक होगा
--लगाकर query lines comment कर पाना चाहिएअगर नहीं हो रहा है तो bug है, मैं जांच करूंगा
पुरानी queries और मिली हुई चीजें save करने के लिए Notes tab भी use कर सकते हैं