څنګه او ولې موږ د ښاري ټیک ننګونې هیکاتون کې د لوی ډیټا ټریک وګټلو

زما نوم دیمیتری دی. او زه غواړم په دې اړه وغږیږم چې څنګه زموږ ټیم د لوی ډیټا ټریک کې د ښاري ټیک چیلنج هیکاتون فاینل ته ورسید. زه به سمدلاسه ووایم چې دا لومړی هیکاتون نه دی چې ما پکې برخه اخیستې وه ، او نه لومړی چې ما جایزې اخیستې. په دې اړه، زما په کیسه کې زه غواړم په ټولیزه توګه د هیکاتون صنعت په اړه ځینې عمومي کتنې او پایلې وړاندې کړم، او خپل نظر د منفي بیاکتنې په مقابل کې وړاندې کړم چې د ښاري ټیک ننګونې پای ته رسیدو سمدستي وروسته آنلاین ښکاره شو (د دې لپاره مثال دا).

نو لومړی ځینې عمومي لیدنې.

1. دا د حیرانتیا خبره ده چې ډیری خلک په ساده ډول فکر کوي چې هیکاتون یو ډول سپورت سیالي ده چیرې چې غوره کوډر ګټل کیږي. دا غلط دی. زه هغه قضیو ته پام نه کوم کله چې د هیکاتون تنظیم کونکي پخپله نه پوهیږي چې دوی څه غواړي (ما دا هم لیدلي دي). مګر، د یوې قاعدې په توګه، هغه شرکت چې هیکاتون تنظیموي خپل اهداف تعقیبوي. د دوی لیست ممکن توپیر ولري: دا ممکن د ځینو ستونزو تخنیکي حل وي، د نوي نظرونو او خلکو لټون، او نور. دا اهداف اکثرا د پیښې بڼه، د هغې وخت، آنلاین / آفلاین ټاکي، دندې به څنګه جوړ شي (او ایا دوی به په بشپړ ډول جوړ شي)، ایا په هیکاتون کې به د کوډ بیاکتنه وي، او نور. دواړه ټیمونه او هغه څه چې دوی یې کړي له دې نظره ارزول کیږي. او هغه ټیمونه چې ترټولو غوره ټکي ته رسیدلي شرکت ګټلو ته اړتیا لري، او ډیری دې ټکي ته په بشپړ ډول په غیر شعوري او تصادفي ډول رسیدلي ، فکر کوي چې دوی واقعیا د سپورت سیالۍ کې برخه اخلي. زما مشاهدې ښیې چې د برخه اخیستونکو هڅولو لپاره ، تنظیم کونکي باید لږترلږه د سپورت چاپیریال او مساوي شرایط رامینځته کړي ، که نه نو دوی به د منفي څپې ترلاسه کړي ، لکه څنګه چې پورته بیاکتنه کې. خو موږ غورځوو.

2. له همدې امله لاندې پایله. تنظیم کونکي د ګډون کونکو سره علاقه لري چې د خپل کار سره هیکاتون ته راشي ، ځینې وختونه دوی حتی د دې هدف لپاره د آنلاین لیک مرحلې تنظیموي. دا د قوي محصول حلونو ته اجازه ورکوي. د "خپل کار" مفکوره خورا اړونده ده؛ هر تجربه لرونکی پرمخ وړونکی کولی شي په خپل لومړي ژمنې کې د خپلو پخوانیو پروژو څخه د کوډ زرګونه لینونه راټول کړي. او ایا دا به مخکې له مخکې چمتو شوی پرمختګ وي؟ مګر په هر حالت کې، قاعده پلي کیږي، کوم چې ما د مشهور یادښت په بڼه څرګند کړ:

څنګه او ولې موږ د ښاري ټیک ننګونې هیکاتون کې د لوی ډیټا ټریک وګټلو

د ګټلو لپاره، تاسو باید یو څه ولرئ، یو ډول رقابتي ګټه: یو ورته پروژه چې تاسو په تیرو وختونو کې ترسره کړې، په یوه ځانګړې موضوع کې پوهه او تجربه، یا د هیکاتون له پیل څخه مخکې چمتو شوی کار. هو، دا سپورت نه دی. هو، دا ممکن د مصرف شوي هڅې ارزښت نه وي (دلته، هرڅوک د ځان لپاره پریکړه کوي چې آیا دا د 3 اونیو لپاره د شپې د 100 زرو انعام لپاره د کوډ کولو ارزښت لري، د ټول ټیم ​​ترمنځ ویشل شوي، او حتی د ترلاسه کولو خطر سره سره). مګر، ډیری وختونه، دا یوازینی فرصت دی چې مخکې لاړ شي.

3. د ټیم انتخاب. لکه څنګه چې ما د هیکاتون په چیټونو کې ولیدل، ډیری دې مسلې ته په ډیره بې رحمۍ سره ګوري (که څه هم دا ترټولو مهمه پریکړه ده چې ستاسو پایله به په هیکاتون کې وټاکي). د فعالیت په ډیری برخو کې (دواړه په سپورتونو او هیکاتونونو کې) ما ولیدل چې قوي خلک د قوي سره یو ځای کیږي ، ضعیف د ضعیف سره ، هوښیار د هوښیار سره ، ښه ، په عموم کې ، تاسو نظر ترلاسه کوئ ... دا تقریبا هغه څه دي چې په چیټونو کې پیښیږي: لږ قوي برنامه کونکي دوی سمدلاسه له مینځه وړل کیږي ، هغه خلک چې د هیکاتون لپاره ارزښتناکه مهارتونه نلري د اوږدې مودې لپاره په چیټ کې ځړول کیږي او په اصولو سره ټیم غوره کوي که یوازې څوک یې واخلي. . په ځینو هیکاتونونو کې، ټیمونو ته تصادفي دنده ترسره کیږي، او تنظیم کونکي ادعا کوي چې تصادفي ټیمونه د موجوده ټیمونو څخه بدتر ترسره کوي. مګر زما د نظرونو له مخې، هڅول شوي خلک، د یوې قاعدې په توګه، په خپله یو ټیم پیدا کوي؛ که چیرې یو څوک وګمارل شي، نو ډیری وختونه د دوی ډیری هیکاتون ته نه راځي.

لکه څنګه چې د ټیم جوړښت لپاره، دا خورا انفرادي او په دنده پورې اړه لري. زه کولی شم ووایم چې لږترلږه ګټور ټیم جوړښت ډیزاینر دی - مخکینۍ پای یا مخکینۍ پای - شاته پای. مګر زه د داسې قضیو په اړه هم پوهیږم کله چې ټیمونه یوازې د مخکښو لوبغاړو څخه جوړ شوي وګټل، چا چې په node.js کې یو ساده بیک انډ اضافه کړ، یا د ریکټ اصلي کې ګرځنده اپلیکیشن جوړ کړ؛ یا یوازې د ملاتړ کونکو څخه چې ساده ترتیب یې کړی. په عموم کې، هرڅه خورا انفرادي دي او په دنده پورې اړه لري. د هیکاتون لپاره د ټیم غوره کولو لپاره زما پلان په لاندې ډول و: ما پلان درلود چې یو ټیم راټول کړم یا په ټیم کې شامل شم لکه د مخکښې پای - شاته - ډیزاینر (زه پخپله د مخکښې پای یم). او ډیر ژر ما د پیتون بیکینڈر او ډیزاینر سره خبرې پیل کړې چې زموږ سره د یوځای کیدو بلنه یې ومنله. یو څه وروسته، یوه نجلۍ، د سوداګرۍ شنونکي، چې دمخه یې د هیکاتون ګټلو تجربه درلوده، زموږ سره یوځای شوه، او دې زموږ سره د یوځای کیدو مسله پریکړه وکړه. د یوې لنډې ناستې وروسته، موږ پریکړه وکړه چې ځان ته U4 (URBAN 4، urban four) په زړه پورې څلور سره ورته والی سره ووایو. او دوی حتی زموږ د ټیلیګرام چینل په اوتار کې ورته عکس واچاوه.

4. د دندې غوره کول. لکه څنګه چې ما مخکې وویل، تاسو باید رقابتي ګټه ولرئ، د هیکاتون لپاره دنده د دې پر بنسټ غوره شوې. د دې پر بنسټ، لیدل کیږي د دندې لیست او د دوی پیچلتیا ارزولو سره، موږ په دوو دندو کې ځای پر ځای شو: د DPiIR څخه د نوښتګرو شرکتونو لیست او د EFKO څخه چیټ بوټ. د DPIiR څخه دنده د بیکندر لخوا غوره شوې وه، د EFKO دنده زما لخوا غوره شوې وه، ځکه په node.js او DialogFlow کې د chatbots لیکلو تجربه درلوده. د EFKO دنده هم په ML کې شامله ده؛ زه په ML کې ځینې، خورا پراخه نه، تجربه لرم. او د ستونزې شرایطو سره سم، داسې ښکاري چې دا د ML وسیلو په کارولو سره د حل کولو امکان نلري. دا احساس پیاوړی شو کله چې زه د ښاري ټیک ننګونې غونډې ته لاړم، چیرې چې تنظیم کونکو ماته د EFKO په اړه یو ډیټاسیټ وښوده، چیرې چې د محصول ترتیب شاوخوا 100 عکسونه (د بیلابیلو زاویو څخه اخیستل شوي) او د ترتیب غلطیو شاوخوا 20 ټولګي شتون درلود. او، په ورته وخت کې، هغه کسان چې د دندې امر یې کړی غوښتل د 90٪ د درجه بندي بریالیتوب کچه ترلاسه کړي. د پایلې په توګه، ما د ML پرته د حل یو پریزنټشن چمتو کړ، بیکډر د کتلاګ پراساس یو پریزنټشن چمتو کړ، او یوځای، د پریزنټشنونو نهایی کولو وروسته، موږ دوی د ښاري ټیک ننګونې ته واستول. په دې مرحله کې، د هر ګډونوال د هڅونې او ونډې کچه معلومه شوه. زموږ ډیزاینر په بحثونو کې برخه نه وه اخیستې، ناوخته ځواب ورکړ، او حتی په وروستي وخت کې یې د خپل ځان په اړه معلومات ډک کړل، په عموم کې شکونه راپورته شول.

د پایلې په توګه، موږ د DPiIR څخه دنده تیره کړه، او په هیڅ ډول خپه نه وو چې موږ د EFKO پاس نه کړ، ځکه چې دا کار موږ ته عجیب ښکاري، په نرمۍ سره یې ترسره کړو.

5. د هیکاتون لپاره چمتو کول. کله چې په پای کې معلومه شوه چې موږ د هیکاتون لپاره وړتیا درلوده، موږ چمتووالی پیل کړ. او دلته زه د هیکاتون له پیل څخه یوه اونۍ دمخه د کوډ لیکلو پیل کولو ملاتړ نه کوم. لږترلږه، تاسو باید یو بویلر پلیټ چمتو کړئ، د کوم سره تاسو کولی شئ سمدلاسه کار پیل کړئ، پرته له دې چې وسیلې ترتیب کړئ، او پرته له دې چې د ځینې لیب بګونو سره ټکر وکړئ چې تاسو پریکړه کړې چې د لومړي ځل لپاره په هیکاتون کې هڅه وکړئ. زه د زاویه انجینرانو په اړه یوه کیسه پیژنم چې هیکاتون ته راغلی او د پروژې جوړولو په ترتیب کولو کې یې 2 ورځې تیرې کړې ، نو هرڅه باید دمخه چمتو شي. موږ اراده درلوده چې مسؤلیتونه په لاندې ډول توزیع کړو: بیکیډر هغه کرالرونه لیکي چې انټرنیټ ګړندي کوي او ټول راټول شوي معلومات په ډیټابیس کې اچوي ، پداسې حال کې چې زه په node.js کې یو API لیکم چې دا ډیټابیس پوښتنې کوي او ډیټا مخ ته لیږي. په دې اړه، ما د express.js په کارولو سره مخکې له مخکې یو سرور چمتو کړ او په عکس العمل کې یې مخکینۍ پای چمتو کړ. زه CRA نه کاروم، زه تل د خپل ځان لپاره ویب پیک تنظیموم او زه ښه پوهیږم چې دا کوم خطرونه رامینځته کولی شي (د زاویه پراختیا کونکو په اړه کیسه په یاد ولرئ). پدې مرحله کې ، ما زموږ له ډیزاینر څخه د انٹرفیس ټیمپلیټونو یا لږترلږه ماک اپونو غوښتنه وکړه ترڅو د دې په اړه نظر ترلاسه کړم چې زه به څه شی ایښودل شم. په تیوري کې، هغه باید خپل چمتووالی هم ونیسي او موږ سره یې همغږي کړي، مګر ما هیڅکله ځواب نه دی ترلاسه کړی. د پایلې په توګه، ما ډیزاین زما د یوې پخوانۍ پروژې څخه پور واخیست. او دا په چټکۍ سره کار پیل کړ، ځکه چې د دې پروژې ټول سټایلونه لا دمخه لیکل شوي وو. له همدې امله پایله: ډیزاینر تل په ټیم کې اړتیا نلري))). موږ د دې پرمختګونو سره هیکاتون ته راغلو.

6. په هیکاتون کې کار وکړئ. لومړی ځل چې ما زما ټیم ژوندی ولید یوازې د مرکزي توزیع مرکز کې د هیکاتون په پرانستلو کې و. موږ ولیدل، د ستونزې د حل او د کار د پړاوونو په اړه بحث وکړ. او که څه هم د خلاصیدو وروسته موږ باید د اکتوبر سره ریډ ته په بس کې لاړ شو، موږ د خوب لپاره کور ته لاړو، موږ موافقه وکړه چې د 9.00:XNUMX پورې ځای ته ورسیږو. ولې؟ تنظیم کونکي په ښکاره ډول غوښتل چې د برخه اخیستونکو څخه ډیره ګټه ترلاسه کړي، نو دوی ورته مهال ویش ترتیب کړ. مګر، زما په تجربه کې، تاسو کولی شئ په نورمال ډول د یوې شپې خوب کولو پرته کوډ وکړئ. لکه څنګه چې د دوهم لپاره، زه نور ډاډه نه یم. هیکاتون یو میراتون دی؛ تاسو اړتیا لرئ په کافي اندازه محاسبه او خپل ځواک پلان کړئ. سربیره پردې، موږ چمتووالی درلود.

څنګه او ولې موږ د ښاري ټیک ننګونې هیکاتون کې د لوی ډیټا ټریک وګټلو

نو له ویده کیدو وروسته د سهار په ۹ بجو د دیوکراسي په شپږم پوړ کې ناست وو. بیا زموږ ډیزاینر په ناڅاپي ډول اعلان وکړ چې هغه لپ ټاپ نلري او هغه به د کور څخه کار وکړي، او موږ به د تلیفون له لارې اړیکه ونیسو. دا وروستی غله وه. او په دې توګه موږ له څلور څخه درې ته واړوو، که څه هم موږ د ټیم نوم نه دی بدل کړی. یوځل بیا ، دا زموږ لپاره لوی ګوزار نه و؛ ما دمخه د زاړه پروژې ډیزاین درلود. په عموم کې، په لومړي سر کې هرڅه په سمه توګه او د پلان سره سم پرمخ تللي. موږ ډیټابیس ته پورته کړ (موږ پریکړه وکړه چې neo9.00j وکاروو) د تنظیم کونکو څخه د نوښتګرو شرکتونو ډیټاسیټ. ما ټایپ سیټینګ پیل کړ، بیا یې node.js پورته کړ، او بیا شیان غلط پیل شول. ما مخکې هیڅکله د neo4j سره کار نه دی کړی، او په لومړي سر کې ما د دې ډیټابیس لپاره د کار چلوونکي په لټه کې وم، بیا ما معلومه کړه چې څنګه یوه پوښتنه ولیکم، او بیا زه حیران شوم چې دا معلومه کړم چې دا ډیټابیس، کله چې پوښتنه کیږي، په ډیټابیس کې ادارې بیرته راولي. د نوډ څیزونو او د دوی څنډو د لړۍ بڼه. هغوی. کله چې ما د TIN لخوا د یوې ادارې او په هغې کې د ټولو معلوماتو غوښتنه وکړه، د یوې ادارې اعتراض پر ځای، ما ته د دې سازمان او د دوی ترمنځ د اړیکو په اړه د معلوماتو یوه اوږده لړۍ بیرته راګرځول شوه. ما یو نقشه لیکلې چې د ټول صف څخه تیریږي او ټول توکي یې د دوی تنظیم سره سم په یوه څیز کې چپه کړي. مګر په جګړه کې، کله چې د 4 زره سازمانونو ډیټابیس غوښتنه وکړه، دا خورا ورو ورو، شاوخوا 8 - 20 ثانیو کې اعدام شو. ما د اصلاح کولو په اړه فکر پیل کړ ... او بیا موږ په وخت کې ودریدو او MongoDB ته لاړ شو، او دا موږ شاوخوا 30 دقیقې وخت واخیست. په مجموع کې، نږدې 30 ساعته په neo4j کې ضایع شوي.

په یاد ولرئ، هیڅکله هیکاتون ته ټیکنالوژي مه اخلئ چې تاسو ورسره بلد نه یاست، ممکن حیرانتیا وي. مګر، په عموم کې، د دې ناکامۍ سربیره، هرڅه د پلان سره سم پرمخ تللي. او دمخه د دسمبر په 9 سهار ، موږ په بشپړ ډول کاري غوښتنلیک درلود. د پاتې ورځې لپاره موږ پلان درلود چې پدې کې اضافي ځانګړتیاوې اضافه کړو. په راتلونکي کې ، هرڅه زما لپاره نسبتا اسانه پرمخ تللي ، مګر بیکیډر د لټون انجنونو کې د خپلو کرالرونو بندیز سره د قانوني ادارو مجموعو سپیم کې د ستونزو یوه ټوله برخه درلوده ، کوم چې د غوښتنې په وخت کې د لټون پایلو په لومړي ځای کې راځي. د هر ځانګړي شرکت لپاره. مګر دا د هغه لپاره غوره ده چې پخپله د دې په اړه ووایی. لومړی اضافي ځانګړتیا چې ما اضافه کړه د بشپړ نوم لخوا لټون و. د VKontakte عمومي رییس. دا څو ساعته وخت ونیو.

نو، زموږ په غوښتنلیک کې د شرکت په پاڼه کې، د عمومي رییس اوتار څرګند شو، د هغه د VKontakte پاڼې او ځینې نورو معلوماتو لپاره لینک. دا په کیک کې یو ښه چیری و، که څه هم دا ممکن موږ ته بریا نه وي راکړې. بیا، ما غوښتل چې ځینې تحلیلونه پرمخ بوځي. مګر د اختیارونو اوږده لټون وروسته (د UI سره ډیری نیمګړتیاوې شتون درلود) ، ما د اقتصادي فعالیت کوډ لخوا د سازمانونو ترټولو ساده راټولولو باندې آباد شوم. دمخه په ماښام کې ، په وروستیو ساعتونو کې ، ما د نوښت محصولاتو ښودلو لپاره یوه نمونه ایښودله (زموږ په غوښتنلیک کې باید د محصولاتو او خدماتو برخه وي) ، که څه هم پس منظر د دې لپاره چمتو نه و. په ورته وخت کې، ډیټابیس په چټکۍ سره پړسیدلی و، کرالرانو کار ته دوام ورکړ، بیکینڈر د NLP سره تجربه وکړه ترڅو نوښتي متنونه د غیر نوښتونو څخه توپیر وکړي))). مګر د وروستي پریزنټشن وخت لا دمخه نږدې و.

7. پریزنټیشن. زما د خپلې تجربې څخه، زه کولی شم ووایم چې تاسو باید د 3 څخه تر 4 ساعتونو دمخه د پریزنټشن چمتو کولو ته لاړشئ. په ځانګړي توګه که دا ویډیو پکې شامل وي ، د دې شوټینګ او ترمیم خورا ډیر وخت نیسي. موږ باید یوه ویډیو ولرو. او موږ یو ځانګړی کس درلود چې دا معامله یې وکړه، او یو شمیر نور تنظیمي مسلې یې هم حل کړې. په دې برخه کې، موږ تر وروستۍ شیبې پورې د کوډ کولو څخه ځان نه دی اړولی.

8. پچه. ما دا نه خوښوله چې پریزنټشنونه او فاینلونه د اونۍ په جلا ورځ (دوشنبه) کې ترسره شوي. دلته، ډیری احتمال، د تنظیم کونکو پالیسي د ګډون کوونکو څخه د اعظمي اندازې د مینځلو لپاره دوام لري. ما پلان نه درلود چې له کار څخه وخت واخلم، ما یوازې غوښتل چې فاینل ته ورشم، که څه هم زما پاتې ټیم د ورځې رخصتي اخیستې وه. په هرصورت، په هیکاتون کې احساساتي ډوب لا دمخه دومره لوړ و چې د سهار په 8 بجو ما د خپل ټیم ​​(د کار ټیم نه د هیکاتون ټیم) په چیټ کې لیکلي و چې ما ورځ په خپل لګښت اخیستې ، او مرکز ته لاړم. د پچو لپاره دفتر. زموږ ستونزه د ډیری خالص ډیټا ساینس پوهانو په درلودلو بدله شوه، او دا د ستونزې حل کولو طریقه ډیره اغیزه وکړه. ډیری یې ښه DS درلود، مګر هیڅوک د کار پروټوټایپ نه درلود، ډیری یې نشي کولی د لټون انجنونو کې د خپلو کرالرونو بندیز شاوخوا ترلاسه کړي. موږ یوازینی ټیم وو چې د کاري پروټوټایپ سره. او موږ پوهیږو چې څنګه ستونزه حل کړو. په پای کې، موږ ټریک وګټلو، که څه هم موږ ډیر خوشحاله یو چې موږ لږ رقابتي دنده غوره کړه. په نورو لاریو کې پیچونو ته په کتلو سره، موږ پوهیږو چې موږ به هلته هیڅ فرصت ونه لرو. زه دا هم ویل غواړم چې موږ د جوري سره ډیر خوشحاله وو؛ دوی په دقت سره کوډ چیک کړ. او، د بیاکتنې په واسطه قضاوت کول، دا په ټولو لارښوونو کې ندي پیښ شوي.

9. وروستی. وروسته له هغه چې موږ د کوډ بیاکتنې لپاره څو ځله جیوري ته وغوښتل شو، موږ فکر کاوه چې موږ په پای کې ټولې مسلې حل کړې، د برګر کینګ کې د غرمې ډوډۍ ته لاړو. هلته تنظیم کونکو موږ ته بیا زنګ وواهه، موږ باید ژر تر ژره خپل آرډرونه بسته کړو او بیرته لاړ شو.

تنظیم کونکي موږ ته وښودله چې کومې خونې ته اړتیا لرو، او د ننوتلو سره، موږ د ګټونکو ټیمونو لپاره د عامه وینا روزنې غونډې کې ځانونه ولیدل. هغه هلکان چې په سټیج کې یې ترسره کول په ښه توګه چارج شوي وو، هرڅوک د ریښتیني نندارې په څیر راوتلي وو.

او زه باید اعتراف وکړم ، په فاینل کې ، د نورو ټریکونو څخه د قوي ټیمونو شالید په مقابل کې ، موږ تیاره ښکاریدو؛ د دولتي پیرودونکي نومونې کې بریا د حقیقي املاکو ټیک ټریک څخه ټیم ته د پام وړ و. زه فکر کوم هغه کلیدي فاکتورونه چې په لار کې زموږ بریا کې مرسته کړې وه: د چمتو شوي خالي شتون شتون ، د دې له امله موږ وکولی شو ژر تر ژره پروټوټایپ رامینځته کړو ، په پروټوټایپ کې د "نښکو" شتون (د اجرایوي رییسانو لټون په ټولنیزو شبکو کې) او زموږ د ملاتړ کونکي NLP مهارتونه ، کوم چې جیوري ته هم ډیره علاقه لري.

څنګه او ولې موږ د ښاري ټیک ننګونې هیکاتون کې د لوی ډیټا ټریک وګټلو

او په پایله کې، د ټولو هغو کسانو څخه چې زموږ ملاتړ یې کړی دودیز مننه، زموږ د ټریک جوري، ایوګیني ایوګرافیف (د هغه ستونزې لیکوال چې موږ یې په هیکاتون کې حل کړ) او البته د هیکاتون تنظیم کونکي. دا شاید ترټولو لوی او غوره هیکاتون و چې ما په کې برخه اخیستې وه، زه یوازې د هلکانو هیله کولی شم چې په راتلونکي کې دومره لوړ معیار وساتي!

سرچینه: www.habr.com

Add a comment