హలో, హబ్ర్. మేము మా మొదటి అంతర్గత హ్యాకథాన్ను ఆకస్మికంగా నిర్వహించాము. 2 వారాల్లో దాని కోసం సిద్ధం చేయడం గురించి నా బాధలు మరియు ముగింపులు, అలాగే మారిన ప్రాజెక్ట్లను మీతో పంచుకోవాలని నిర్ణయించుకున్నాను.
మార్కెటింగ్ పట్ల ఆసక్తి ఉన్నవారికి బోరింగ్ భాగం
నేను ఒక చిన్న కథతో ప్రారంభిస్తాను.
ఏప్రిల్ ప్రారంభం. మొదటి MskDotNet కమ్యూనిటీ హ్యాకథాన్ మా కార్యాలయంలో జరుగుతోంది. ఈసారి మన గెలాక్సీలో టాటూయిన్ యుద్ధం పూర్తి స్వింగ్లో ఉంది. శనివారం. 20 జట్లు. పిజ్జా. ప్రతిదీ చాలా నిజాయితీగా ఉంది (రుజువులు) గాలితో కూడిన R2-D2 హాల్ చుట్టూ తేలుతుంది. మ్యాప్లో అత్యంత ప్రమాదకరమైన రేసులో ఉత్తీర్ణత సాధించడానికి జట్లు చాలా సరైన అల్గారిథమ్లను వ్రాస్తాయి. మేము మొదటి రేసుల ప్రారంభాన్ని తరలిస్తున్నాము. కుకీలు మరియు కాఫీ లైఫ్సేవర్లు. శనివారం మధ్యాహ్న భోజనం తర్వాత చాలా మంది వెళ్లిపోతారని నిర్వాహకులు మరియు నేను ఊహించాము. కానీ కాదు. 12 గంటల కోడింగ్ వెనుక ఉంది. ఆఖరి. ఏదో పడిపోతుంది, ఏదో ప్రారంభం కాదు. కానీ అందరూ సంతోషంగా ఉన్నారు. మా జట్టు గెలుస్తుంది. మాకు రెట్టింపు సంతోషం.
నేను స్లాక్లో నా ఆనందాన్ని పంచుకుంటున్నాను మరియు ఆలోచన గుర్తుకు వస్తుంది: "మేము మా స్వంత హ్యాకథాన్ చేయాలి." నేను మా సర్వీస్ స్టేషన్ సాషాకు వ్రాస్తున్నాను. నిశ్శబ్దం.
ఉదయం. ఆఫీసులో కాఫీ తాగుతాను. సాషా వెనుక నుండి వస్తున్నట్లు నేను చూస్తున్నాను. “లిసా, ఇది చాలా బాగుంది! ఏప్రిల్ 21న మాకు ముఖ్యమైన తేదీ ఉంది. మనం చేద్దాం!" WTF!? చాలా వేగంగా? ఎ? ఏమిటి? నేను ఏప్రిల్ మధ్యలో ఇంటర్న్షిప్ కోసం Syktyvkarకి వెళ్లాలి. మరియు దానితో నరకానికి! చేద్దాం.
2 వారాలు మిగిలి ఉన్నాయి. నేను ఎప్పుడూ హ్యాకథాన్కి ఏకైక ఆర్గనైజర్ని కాదు. అది అంతర్గతంగా ఉండనివ్వండి. నేను ఈ అంశంపై కథనాలను చదివాను. కఠినమైన. ఇది చాలా నెలలు పడుతుంది. చాలా మంది వ్యక్తులు అవసరం. మీరు వర్తకం, బహుమతులు, షరతులు, షెడ్యూల్, ఆసక్తి, లక్ష్యం, బడ్జెట్ల గురించి ఆలోచించాలి. లేదా జీవితం యొక్క అర్ధాన్ని కూడా గుర్తించవచ్చు. నేను ఖచ్చితంగా సమయానికి చేరుకోను. మరియు మీరు చదివి సిద్ధం చేస్తున్నప్పుడు, ఇప్పటికే ఒక వారం గడిచిపోయింది. కథనాల గురించి మరచిపోయి ఏదైనా చేయడం ప్రారంభించాల్సిన సమయం ఇది.
1 వారంలో అంతర్గత హ్యాకథాన్ నిర్వహించడం కోసం మా చెక్లిస్ట్ను చూడండి
ప్రణాళిక: మీరు ప్రశాంతంగా కూర్చుని హ్యాకథాన్ కోసం ఏమి చేయాలో జాబితాను వ్రాయండి. సుమారు నిమిషాలు.
టైమ్టేబుల్: మీ మోకాలిపై మీరు 3 విరామాలు మరియు ఫైనల్ను పరిగణనలోకి తీసుకుని, సమయం యొక్క చిన్న బ్రేక్డౌన్ను వ్రాస్తారు. సుమారు నిమిషాలు.
Команды: Slack/mail/etcలో IT ఛానెల్లలో సర్వీస్ స్టేషన్ నుండి షెడ్యూల్తో హ్యాకథాన్ గురించి సందేశాన్ని ప్రచురించండి మరియు హ్యాకథాన్ కోసం ప్రత్యేక ఛానెల్ని సృష్టించండి. అందులో అందరూ టీమ్లుగా విడిపోయి, హ్యాకథాన్లో మొదటి 5 నిమిషాల్లో నిర్ణయం తీసుకోని వారు దీన్ని చేస్తారు. బ్యాక్గ్రౌండ్ టాస్క్, 2 గంటలు.
బన్స్: మీరు ఇద్దరు డెవలపర్లతో వ్యాపార వస్తువులతో ముందుకు వచ్చారు, దానిని రెండరింగ్ కోసం డిజైనర్కి ఇచ్చి, సిద్ధంగా స్వీకరించండి. బ్యాక్గ్రౌండ్ టాస్క్, 3 రోజులు.
హ్యాకథాన్: మీరు కార్యాలయానికి వస్తారు, ప్రారంభంలో అందరినీ సమన్వయం చేసుకోండి, మీ వ్యాపారం గురించి ముందుకు సాగండి, రెడ్డిట్ చదవండి, ముఖ్యంగా తాజా పిజ్జా గురించి ప్రతి విరామాన్ని ప్రకటించండి, సూర్యాస్తమయం యొక్క చిత్రాలను తీయండి, ఫైనల్ను ప్రకటించండి, కలిసి ఓటు వేసి విజేతను ఎంచుకోండి. ఎనిమిది రోజులు.
నక్షత్రం కింద: వాస్తవానికి, మీరు ప్రతిదీ సరిగ్గా జరుగుతుందని నిరంతరం ఆలోచిస్తారు. అయితే, ప్రతి ఒక్కరూ మీ సందేశాన్ని చూడలేరు మరియు కొందరితో వ్యక్తిగతంగా మాట్లాడటం మంచిది. వాస్తవానికి, ఎవరైనా మీకు సహాయం చేస్తే, ప్రతిదీ 2 రెట్లు సులభం అవుతుంది (అద్భుతమైన అలెనా నాకు సహాయం చేసింది).
హ్యాకథాన్ తేదీ గురించి తక్కువ బోరింగ్ భాగం
ఏప్రిల్ 21 ఎందుకు? ఈ రోజు మనకు ముఖ్యమైనది. సరిగ్గా ఒక సంవత్సరం క్రితం, ఏప్రిల్ 21న, ఫెడరల్ అడ్వర్టైజింగ్ క్యాంపెయిన్ ప్రారంభమైన తర్వాత మొదటి వారాంతంలో మేము భారం పడ్డాము. మరుసటి రోజు, ఆదివారం, మా బృందం ఉదయం 8 గంటల నుండి పనిలో ఉంది. అప్పుడు మేము ట్రెల్లోలో సండేహ్యాకథాన్ బోర్డ్ను సృష్టించాము మరియు ఒక వారం షిఫ్ట్ పనిని ప్రారంభించాము, రోజుకు 12 గంటలు. పరిస్థితి చాలా క్లిష్టంగా ఉంది, మాకు తినడానికి కూడా సమయం లేదు మరియు ఇతర జట్ల నుండి మాకు ఆహారం అందించబడింది.
మీరు మరింత వివరణాత్మక కథనాన్ని ఇక్కడ చదవవచ్చు ఫ్యోడర్ ఓవ్చిన్నికోవ్ పేజీ (మా CEO). అప్పటి నుండి, మేము చాలా మారిపోయాము, కానీ ఇప్పుడు మేము ఖచ్చితంగా తేదీని మరచిపోము.
ఈ సంవత్సరం, మేము ఈ సంఘటనను భావితరాల జ్ఞాపకార్థం శాశ్వతంగా కొనసాగించాలని నిర్ణయించుకున్నాము మరియు ఉత్తమ సంప్రదాయాలలో, మేము డోడో చరిత్రలో మొదటి అంతర్గత హ్యాకథాన్ను నిర్వహించాము, ఇది 10 గంటల పాటు కొనసాగింది.
హ్యాకథాన్ ప్రాజెక్ట్ల గురించి చాలా బోరింగ్ భాగం
నిరాకరణ: అన్ని వివరణలు అబ్బాయిలు స్వయంగా వ్రాసారు, కాబట్టి టెక్స్ట్ యొక్క రచయిత నాది కాదు.
ఎలాంటి అవగాహన లేకుండా ఫోటోలో ఎలాంటి పిజ్జా ఉందో గుర్తించే న్యూరల్ నెట్వర్క్ను తయారు చేయాలనుకున్నారు. ఫలితంగా, మేము చాలా సులభమైన మరియు బొమ్మను తయారు చేసాము - ఇది 10 పిజ్జాలను గుర్తిస్తుంది, ఒక రోజులో (~10 గంటలు) సాధ్యమైనంత వరకు ప్రతిదీ ఎలా పని చేస్తుందో మేము స్థూలంగా కనుగొన్నాము.
ప్రత్యేకించి, ఒక సాధారణ డెవలపర్ రెడీమేడ్ లైబ్రరీలను తీసుకోగల, డాక్యుమెంటేషన్ను చదవగల మరియు అతని న్యూరల్ నెట్వర్క్కు సబ్జెక్ట్పై లోతైన అవగాహన లేకుండా శిక్షణ ఇచ్చే స్థాయికి పరిశ్రమ చేరుకుందని మేము గ్రహించాము. మరియు నిజమైన సమస్యలను పరిష్కరించడానికి ఇది బాగా పని చేస్తుంది.
ఉపయోగించిన సాధనాలు:
చిత్రం — మెషీన్ లెర్నింగ్ మరియు కంప్యూటర్ విజన్తో పని చేయడానికి అనుకూలమైన మరియు సరళమైన లైబ్రరీ.
మేము రెండు మోడళ్లను ప్రయత్నించాము - ResNet50, Yolo.
కోడ్ ఖచ్చితంగా పైథాన్లో వ్రాయబడింది.
మా వద్ద 11000 ఫోటోలు ఉన్నాయి, కానీ వాటిలో దాదాపు 3/4 చెత్తగా మారాయి మరియు మిగిలినవి భిన్నమైన, అనుచితమైన కోణాలను కలిగి ఉన్నాయి. ఫలితంగా, మేము ఒక రెడీమేడ్ మోడల్ను తీసుకున్నాము (ఇది పిజ్జాను ఎలా కనుగొనాలో మాత్రమే తెలుసు) మరియు దాని సహాయంతో మేము చెత్తను వేరు చేసాము. తరువాత, ఫోటో యొక్క శీర్షికలో పిజ్జా పేరు ఉంది - కాబట్టి మేము దానిని ఫోల్డర్లుగా క్రమబద్ధీకరించాము, అయితే పేర్లు వాస్తవికతతో ఏకీభవించలేదని మరియు మేము దానిని మానవీయంగా శుభ్రం చేయాల్సి ఉందని తేలింది. చివరికి, దాదాపు 500-600 ఫోటోలు మిగిలి ఉన్నాయి, ఇది చాలా తక్కువ మొత్తం అని స్పష్టంగా తెలుస్తుంది, అయినప్పటికీ, 10 పిజ్జాలను ఒకదానికొకటి వేరు చేయడానికి ఇది సరిపోతుంది.
గ్రిడ్కు శిక్షణ ఇవ్వడానికి, మేము NVIDIA Tesla K80లో అజూర్లో చౌకైన వర్చువల్ మెషీన్ను తీసుకున్నాము. వారు దానిపై 100 యుగాల పాటు శిక్షణ పొందారు, అయితే ఒక చిన్న డేటాసెట్ ఉన్నందున 50 యుగాల తర్వాత నెట్వర్క్ అధికంగా ఉందని స్పష్టమైంది.
వాస్తవానికి, మొత్తం సమస్య మంచి డేటా లేకపోవడం.
మేము నిబంధనలను కొద్దిగా గందరగోళానికి గురిచేసి ఉండవచ్చు, కానీ ఈ విషయాలన్నింటితో పని చేయడంలో మాకు ఎటువంటి అనుభవం లేదని మనం పరిగణనలోకి తీసుకోవాలి.
మేము గీక్ల కోసం కన్సోల్ అప్లికేషన్ యొక్క ప్రోటోటైప్ను కలిసి ఉంచాము, దీనికి ధన్యవాదాలు మీరు టెర్మినల్ లేదా కమాండ్ లైన్ ద్వారా పిజ్జాను ఆర్డర్ చేయవచ్చు లేదా దానిని డిప్లాయ్మెంట్ పైప్లైన్లో ఏకీకృతం చేయవచ్చు మరియు విజయవంతంగా విడుదలైన తర్వాత, పిజ్జాను కార్యాలయానికి పంపిణీ చేయవచ్చు.
పని అనేక భాగాలుగా విభజించబడింది: మొబైల్ అప్లికేషన్ల కోసం మా API ఎలా పనిచేస్తుందో మేము కనుగొన్నాము, మా స్వంత CLIని ఉపయోగించి సమీకరించాము. oclif మరియు మేము సేకరించిన ప్యాకేజీ యొక్క ప్రచురణను కాన్ఫిగర్ చేసాము. చివరి టాస్క్లో హ్యాకథాన్ ముగింపులో కొన్ని అసహ్యకరమైన నిమిషాలు ఉన్నాయి. ప్రతిదీ మా కోసం స్థానికంగా పని చేసింది మరియు ప్యాకేజీ యొక్క పాత ప్రచురించిన సంస్కరణలు కూడా పనిచేశాయి, అయితే కొత్తవి (మరింత అద్భుతమైన ఫీచర్లు మరియు ఎమోటికాన్లను జోడించాయి) పని చేయడానికి నిరాకరించాయి. ఏమి తప్పు జరిగిందో గుర్తించడానికి మేము సుమారు 40 నిమిషాలు గడిపాము, కానీ చివరికి ప్రతిదీ అద్భుతంగా దాని స్వంతదానిపై పని చేసింది).
హ్యాకథాన్ కోసం మా గరిష్ట ప్రోగ్రామ్ మా CLI ద్వారా కార్యాలయానికి పిజ్జా యొక్క నిజమైన ఆర్డర్. మేము టెస్ట్ బెంచ్లో డజను సార్లు ప్రతిదీ అమలు చేసాము, కానీ నేను ఉత్పత్తిలో ఆదేశాలను నమోదు చేసినప్పుడు నా చేతులు వణుకుతున్నాయి.
తయారీ గురించి నేపథ్యం.ప్రారంభంలో, అప్లికేషన్లో ఎలాంటి ఫీచర్లు ఉండవచ్చని నేను ఆశ్చర్యపోయాను? కింది కార్యాచరణ జాబితా ఉద్భవించింది:
అప్లికేషన్ కోడ్ ఉపయోగించి డెలివరీ నగదు రిజిస్టర్లోకి లాగిన్ అవుతుంది.
అప్లికేషన్ వెంటనే అందుబాటులో ఉన్న ఆర్డర్లు మరియు తీసుకోవలసిన ఆర్డర్లను చూపుతుంది.
కొరియర్ ఆర్డర్ను నోట్ చేసి ట్రిప్లో తీసుకుంటాడు.
అతనికి అంచనా వేసిన సమయం మరియు అతను సమయానికి ఉన్నాడా లేదా అని చూపబడుతుంది.
కొరియర్ వెళ్లిపోయిందని క్లయింట్కి చూపుతుంది.
క్లయింట్కు మాప్లో కొరియర్ పాయింట్ మరియు అంచనా వేసిన సమయం చూపడం ప్రారంభమవుతుంది.
కొరియర్ అప్లికేషన్ నుండి చాట్లో క్లయింట్కు వ్రాయవచ్చు.
క్లయింట్ అప్లికేషన్ నుండి చాట్ ద్వారా కొరియర్కు వ్రాయవచ్చు.
రాకకు ఐదు నిమిషాల ముందు, కొరియర్ దగ్గరగా ఉంది, సిద్ధంగా ఉండండి అని క్లయింట్ సందేశాన్ని అందుకుంటారు.
కొరియర్ దరఖాస్తులో తాను వచ్చానని, వేచి ఉన్నానని పేర్కొన్నాడు.
కొరియర్ అప్లికేషన్ నుండి ఒక క్లిక్తో కాల్ చేసి (పెరుగుతోంది, వచ్చింది మొదలైనవి) అని నివేదిస్తుంది.
క్లయింట్ ఆర్డర్ను అంగీకరిస్తాడు మరియు డెలివరీని నిర్ధారించడానికి అప్లికేషన్ లేదా SMS నుండి పిన్ కోడ్ను నమోదు చేస్తాడు. (సంతకం వలె) కొరియర్ ఆలస్యం అయితే డెలివరీని ముందుగానే పూర్తి చేయలేరు.
ఆర్డర్ సిస్టమ్లో డెలివరీ చేయబడినట్లు గుర్తించబడింది.
మీరు ఆలస్యం అయితే, కొరియర్ ఒక బటన్తో SMS ద్వారా ఎలక్ట్రానిక్ ప్రమాణపత్రాన్ని జారీ చేయవచ్చు. లేదా డెలివరీ గడువు ముగియకపోతే సర్టిఫికేట్ ఆటోమేటిక్గా వస్తుంది.
ఈ ప్రాజెక్ట్ యొక్క వాగ్దానం మరియు ఆవశ్యకత యొక్క భావన, వాస్తవానికి, శక్తినిస్తుంది.
మరుసటి రోజు మేము బృందంతో భోజనానికి వెళ్లి అప్లికేషన్ యొక్క కనీస కార్యాచరణ ఎలా ఉంటుందో చర్చించాము.
ఫలితంగా, హ్యాకథాన్లో ఏమి చేయాలో క్రింది జాబితా రూపొందించబడింది:
డెలివరీ నగదు రిజిస్టర్కు లాగిన్ చేయండి.
ప్రస్తుత స్థానాన్ని ప్రదర్శించు.
బాహ్య APIకి డేటాను పంపండి (కోఆర్డినేట్లు, ఆర్డర్ను స్వీకరించారు, ఆర్డర్ని అందించారు).
బాహ్య API (ప్రస్తుత కొరియర్ ఆర్డర్లు) నుండి డేటాను స్వీకరించండి.
డెలివరీ/డెలివరీ కోసం మీరు ఆర్డర్ తీసుకున్నారని సూచించే ఈవెంట్ను పంపండి.
వెబ్సైట్లోని మ్యాప్లో కొరియర్ యొక్క ప్రస్తుత స్థితిని ప్రదర్శించండి.
ప్రధాన పని, అనిపించినట్లుగా, బ్యాకెండ్, అప్లికేషన్ను రూపొందించడంలో ఉంది (చర్చల తర్వాత, అప్లికేషన్ను అభివృద్ధి చేయడానికి మేము రియాక్ట్నేటివ్ని ఎంచుకున్నాము లేదా దాని కోసం ఫ్రేమ్వర్క్ - expo.io, ఇది స్థానిక కోడ్ను అస్సలు వ్రాయకూడదని మిమ్మల్ని అనుమతిస్తుంది). బ్యాకెండ్ పరంగా, మొదట్లో వన్య జ్వెరెవ్పై ఆశ ఉంది, ఎందుకంటే అతను మా సేవా టెంప్లేట్ మరియు k8s (అతను తీసుకున్న ఉద్యోగం)తో పని చేయడంలో అనుభవం ఉంది. ఆండ్రీ సరఫనోవ్ మరియు నేను స్పిన్ కోసం రియాక్ట్నేటివ్ తీసుకున్నాము.
ప్రాజెక్ట్ కోసం పని చేసే రిపోజిటరీని వెంటనే సృష్టించడానికి ప్రయత్నించాలని నేను నిర్ణయించుకున్నాను. రియాక్ట్నేటివ్లో బ్యాక్గ్రౌండ్లో జియోలొకేషన్ బాగా పని చేయదని రాత్రి 12 గంటలకు నేను తెలుసుకున్నాను, మీరు స్థానిక కోడ్ని వ్రాయకపోతే, నేను కొంచెం నిరాశకు గురయ్యాను. నేను ఎక్స్పో.ఐఓ ఫ్రేమ్వర్క్ కాదు, రియాక్ట్నేటివ్ డాక్యుమెంటేషన్ని చదువుతున్నానని తెలుసుకున్నప్పుడు నేను వదిలిపెట్టాను. ఫలితంగా, సాయంత్రం సమయంలో నేను ఎక్స్పో.ఐఓలో ప్రస్తుత స్థానాన్ని ఎలా పొందాలో మరియు ప్రత్యేక స్క్రీన్లను (లాగిన్, ఆర్డర్ డిస్ప్లే మొదలైనవి) ఎలా పొందాలో ఇప్పటికే అర్థం చేసుకున్నాను.
ఉదయం హ్యాకథాన్లో, వారు గ్లెబ్ను తమ సూపర్-ప్రామిసింగ్ ప్రాజెక్ట్లోకి ఆకర్షించారు. వారు త్వరగా ఏమి చేయాలో ఒక ప్రణాళికతో వచ్చారు.
ప్రాజెక్ట్ టెంప్లేట్కు అనుగుణంగా, మేము HTTP ద్వారా కాకుండా GRPC ద్వారా కమ్యూనికేట్ చేయడానికి ప్రయత్నించినప్పుడు మేము పొరపాటు చేసాము, ఎందుకంటే JavaScript కోసం GRPC క్లయింట్ను ఎలా నిర్మించాలో ఎవరికీ తెలియదు. చివరికి, సుమారు గంటన్నర గడిపిన తర్వాత, మేము ఈ ఆలోచనను విరమించుకున్నాము. దీని కారణంగా, బ్యాక్ ఎండ్లో ఉన్న అబ్బాయిలు పూర్తయిన సర్వర్ను GRPC నుండి WebApiకి రీమేక్ చేయడం ప్రారంభించారు. అరగంట తర్వాత, మేము చివరకు అప్లికేషన్ మరియు బ్యాకెండ్ మధ్య కమ్యూనికేషన్ని సెటప్ చేయగలిగాము, ఇదిగో. కానీ అదే సమయంలో, గ్లెబ్ k8sకి విస్తరణను మరియు మాస్టర్కు నిబద్ధత యొక్క ఆటో-డిప్లాయ్మెంట్ను దాదాపుగా ముగించాడు. 🙂
డేటాబేస్తో కనీసం రిస్క్ తీసుకోకుండా ఉండటానికి మేము MySQLని నిల్వగా ఎంచుకున్నాము (మాకు CosmosDb గురించి ఆలోచనలు ఉన్నాయి).
చివరికి:
కొరియర్ యొక్క ప్రస్తుత కోఆర్డినేట్లను అప్లికేషన్ నుండి డేటాబేస్కు సేవ్ చేయడం అమలు చేయబడింది.
మేము RabbitMQని ఇన్స్టాల్ చేసాము మరియు అప్లికేషన్లో కొరియర్ నుండి ఆర్డర్ను వెంటనే ప్రదర్శించడానికి కొరియర్ ఆర్డర్ను పికప్ చేయడం గురించి సందేశాలకు సభ్యత్వాన్ని పొందాము.
కొరియర్ అప్లికేషన్లోని బటన్ను నొక్కిన తర్వాత మేము ఆర్డర్ డెలివరీ సమయాన్ని మా డేటాబేస్లో సేవ్ చేయడం ప్రారంభించాము. ఆర్డర్ డెలివరీ చేయబడిన రెబిట్కి ఈవెంట్ను తిరిగి పంపడాన్ని జోడించడానికి మాకు సమయం లేదు.
నేను వెబ్సైట్లోని ప్రస్తుత ఆర్డర్ పేజీలో కొరియర్ యొక్క ప్రస్తుత స్థానంతో మ్యాప్ ప్రదర్శనను చేసాను. మా కొత్త సేవ నుండి కోఆర్డినేట్లను స్వీకరించడానికి వాతావరణంలో CORSని కాన్ఫిగర్ చేయడం సాధ్యం కానందున, ఈ కార్యాచరణ కొద్దిగా అసంపూర్తిగా ఉంది.
మేము OpenID Connect ప్రొవైడర్ని అమలు చేయాలనుకుంటున్నాము, ఎందుకంటే ప్రస్తుతానికి మేము మా స్వంత రూపకల్పన యొక్క ప్రమాణీకరణ ప్రోటోకాల్ను ఉపయోగిస్తాము మరియు ఇది అనేక ఇబ్బందులను సృష్టిస్తుంది: అనుకూల క్లయింట్ లైబ్రరీలు, బాహ్య భాగస్వాముల నుండి అసౌకర్య పని, సాధ్యమయ్యే భద్రతా సమస్యలు (అన్ని తరువాత , సూచన అమలులో OAuth2.0 మరియు OpenID కనెక్ట్ సురక్షితంగా పరిగణించబడతాయి, కానీ మా పరిష్కారం గురించి నాకు ఖచ్చితంగా తెలియదు).
వ్యక్తిగత డేటా కోసం ప్రత్యేక సేవకు వెళ్లే ప్రామాణీకరణ ప్రదాత యొక్క చిన్న దేశం-అజ్ఞాతవాసి మోడల్ను రూపొందించడానికి వ్యక్తిగత డేటాను నిల్వ చేయడం కోసం మేము ఒక సేవను అనుకరించే ప్రత్యేక సేవను తయారు చేసాము (భవిష్యత్తులో దీనితో ఒక సేవను పొందడం సాధ్యమవుతుంది ఏ దేశంలోనైనా ఖాతా నమోదుతో లాగిన్ చేయవచ్చు మరియు అదే సమయంలో GDPR మరియు ఇతర సమాఖ్య చట్టాలకు లోబడి ఉంటుంది). ప్రొవైడర్ చేసినట్లుగా మేము ఈ భాగాన్ని చేసాము మరియు వాటిని ఒకదానితో ఒకటి విజయవంతంగా లింక్ చేసాము. తర్వాత, ప్రొవైడర్ జారీ చేసిన టోకెన్ల ద్వారా రక్షించబడే APIని సృష్టించడం, ప్రొవైడర్ ద్వారా వారి ఆత్మపరిశీలనకు మద్దతు ఇవ్వడం మరియు అభ్యర్థన అధికార విధానాలను సంతృప్తిపరిచినట్లయితే రక్షిత డేటాను అందించడం అవసరం (బేరర్ పథకం ప్రకారం వినియోగదారు ప్రమాణీకరించబడ్డారని మేము తనిఖీ చేస్తాము , అతని టోకెన్ నిర్దిష్ట పరిధిని కలిగి ఉంటుంది + y వినియోగదారు స్వయంగా కాల్ చేయడానికి అనుమతించే అనుమతిని కలిగి ఉన్నారు). ఈ భాగం కూడా పూర్తయింది. చివరి భాగం జావాస్క్రిప్ట్ క్లయింట్, ఇది టోకెన్ ఇవ్వబడుతుంది, దాని సహాయంతో ఇది రక్షిత API అని పిలుస్తుంది. ఈ భాగాన్ని చేయడానికి మాకు సమయం లేదు. అంటే, మొత్తం ఫంక్షనల్ భాగం సిద్ధంగా ఉంది, కానీ ఫ్రంట్-ఎండ్ భాగం మొత్తం సిస్టమ్ యొక్క కార్యాచరణను ప్రదర్శించడానికి సిద్ధంగా లేదు.
E-E-E (బొమ్మ)
డిమా అఫోన్చెంకో, సాషా కొనోవలోవ్
మేము యుంకాలో ఒక చిన్న బొమ్మను తయారు చేసాము, అక్కడ చురుకైన చేతులు పిజ్జాపై సాసేజ్ని విసిరేస్తాయి. మీరు సాసేజ్ను తప్పుగా ఉంచినట్లయితే, విచారకరమైన “తిరస్కరించబడింది” సందేశం తెరపై కనిపిస్తుంది మరియు అన్ని సాసేజ్లను సరిగ్గా ఉంచినట్లయితే, పిజ్జా గురించి యాదృచ్ఛిక వాస్తవం కనిపిస్తుంది.
మేము టమోటాలు విసిరి రెండవ స్థాయిని తయారు చేయాలనుకుంటున్నాము, కానీ మాకు సమయం లేదు.
చిన్న కొనసాగింపు: ఎవరు గెలిచారు?
హ్యాకథాన్కు ముందు, మేము కుర్రాళ్లతో మాట్లాడాము మరియు వారు గెలిస్తే వారు ఏ బహుమతిని పొందాలనుకుంటున్నారు అని నేను అడిగాను. అత్యంత విలువైన బహుమతి "ఆహారానికి మార్గం" అని తేలింది.
అందువల్ల, పిజ్జాపై పెప్పరాన్లను ఉంచే చేతులతో మేము త్వరలో గేమ్ను ప్రకటించాలని ఆశించండి.
శ్రద్ధగల రీడర్ గమనించినట్లుగా, "E-E-E (బొమ్మ)" జట్టు గెలిచింది. అభినందనలు అబ్బాయిలు!
నమోదు చేసుకున్న వినియోగదారులు మాత్రమే సర్వేలో పాల్గొనగలరు. సైన్ ఇన్ చేయండిదయచేసి.
మీకు ఏ ప్రాజెక్ట్ బాగా నచ్చింది?
ఒలేగ్ లెర్నింగ్ (యంత్ర అభ్యాసం)
NOOBS కోసం GUI
కొరియర్గో
M87
E-E-E
5 మంది వినియోగదారులు ఓటు వేశారు. 3 వినియోగదారులు దూరంగా ఉన్నారు.