Jump to content
php.lv forumi

werd

Moderatori
  • Posts

    380
  • Joined

  • Last visited

Everything posted by werd

  1. Oi :) Nepamanīju niansi par vienādu vietu un vietas izlaišanu, ja vienādi punkti. Kaut kas šāds (plain & stupid) risinās problēmu PHP pusē: <?php $array = [ [ 'Name' => 'Bob Johnson', 'Points' => 75, 'Points2' => 68, 'TotalPoints' => 143, ], [ 'Name' => 'John Doe', 'Points' => 80, 'Points2' => 72, 'TotalPoints' => 152, ], [ 'Name' => 'Emily Davis', 'Points' => 85, 'Points2' => 67, 'TotalPoints' => 152, ], [ 'Name' => 'Jane Smith', 'Points' => 90, 'Points2' => 82, 'TotalPoints' => 172, ], ]; $place = 1; $previousTotalPoints = null; $increment = 1; foreach ($array as $row) { $totalPoints = $row['TotalPoints']; if ($previousTotalPoints) { if ($totalPoints == $previousTotalPoints) { $increment++; // only increment - place is the same as before } else { $place += $increment; // place equals previous place + the increment (how many had the same points) $increment = 1; // reset the increment (normally each next place is +1) } } echo sprintf( 'Place: %d - Name: %s - Points: %d - Points2: %d - TotalPoints: %d', $place, $row['Name'], $row['Points'], $row['Points2'], $row['TotalPoints'], ); echo PHP_EOL; $previousTotalPoints = $totalPoints; }
  2. Ņemot vērā, ka tiek izmantots PHP, lai apstrādātu rezultātus: Atlasi datus no datu bāzes kārtojot tos pēc kopējā punktu skaita un vārda (ja punkti sakrīt) SELECT `Name`, Points, Points2, (Points + Points2) AS TotalPoints FROM table_name ORDER BY TotalPoints ASC, `Name` DESC Neredzu vajadzību rēķināt iegūtu vietu ar SQL vaicājumu - tā vietā iterē cauri rezultātiem secīgi un iegūtu vietu rēķini PHP pusē $place = 1; while ($row = mysqli_fetch_assoc($result)) { echo sprintf( 'Place: %d - Name: %s - Points: %d - Points2: %d - TotalPoints: %d', $place++, $row['Name'], $row['Points'], $row['Points2'], $row['TotalPoints'], ); echo PHP_EOL; } Zemāk piemēri:
  3. Piekrītu augstāk sniegtajiem komentāriem - "zaļš gurķis" ļoti lēni (ja vispār) spēs izdarīt visu viens pats bez palīdzības no citiem. Skarbā realitāte, bet tomēr jāņem vērā, ka programmēšana nav priekš visiem - ir cilvēki, kas gadiem mokās, bet spītīgi mēģina sevi pārliecināt: "es esmu programmētājs". Katram, protams, izaugsme ir dažāda un tā atkarīga no vides - vai darbojies spēcigā komandā/projektā vai "mauc pa savam" kādā mazā, melnā kantorītī. Pieredze rāda, ka bieži vien problēma pat vairāk ir ne tehniska - spēja saprast biznesa pusi jeb saprast ko nepieciešams uzbūvēt un kāpēc. Ja tas ir detaļās (nevis virspusēji) skaidrs, tad piemeklēt atbilstošāko tehnisko risinājumu nav tik sarežģīti - ja neizproti nedz biznesa pusi, nedz tehnisko - tad vienam tikt galā ir grūti un rezultāts diezgan droši nebūs gaidītais. @Mārcis Abele silti iesaku tev atrast sevi spēcīgā komandā (tas nenozīmē lielā uzņēmumā) - ja tev ir dots būt labam programmētājam, tad progress un rezultāti neizpaliks (zinošāki komandas biedri palīdzēs).
  4. https://mpdf.github.io vai https://wkhtmltopdf.org (sarežģītākiem gadījumiem)
  5. @Spoon galīgi nav noslēpums :) SIA Arkbauer; https://arkbauer.com/about/technology/ var papētīt sīkāk kādas tehnoloģijas +/- ikdienā izmantojam. Šobrīd kā reiz meklējam komandas papildinājumu, ja ir interese ;)
  6. Mēs ikdienā ar šīm tehnoloģijām darbojamies - Symfony4/5 + PHP7/8. Protams, PHP8 ir pārāk svaigs, lai visi projekti tiktu nomigrēti mērkaķa ātrumā. Jauniem projektiem, protams, vienmēr izmantojam pēdējās stabilās relīzes, ja vien nav kādi specifiski ierobežojumi.
  7. werd

    Platforma

    Kungi, "Page Source" vairs neviens neprot apskatīt? :) No https://atdodmantas.lv/js/app.js -->
  8. https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html#function_aes-encrypt - iebūvētā AES_ENCRYPT() MySQL funkcija neder? Izmanto "sāli", lai enkriptētu un dekriptētu - bez sāls neviens nenolasīs to vērtību arī tad, ja iegūs tavu datu bāzi.
  9. http://docker-sync.io - pieredze gan rāda, ka vienā brīdī nosprūst - sīkāk te. Diemžēl sakarīga risinājuma priekš MacOS pagaidām nav.
  10. Pat diezgan lētāk kā DO :) DO ir lietots labu laiku - stabils un atbilst autora prasībām. Hetzner tiek lietots salīdzinoši nesen, bet jau tagad skaidrs, ka viņiem problēmu ir vairāk un bieži kāda fiziskā mašīna palido - viņu incident lapā ir garš saraksts :) Hetzner arī nedaudz atpaliek fīču ziņā - nav firewall etc. Protams, iet uz priekšu arī viņi - nesen palaida Load Balancing Beta versiju.
  11. Autortiesības taču neliedz citiem radīt to pašu no nulles (bez špikošanas) :) Ir gan stulbi, ka figņas savietošanu ar citu figņu var definēt kā patentu (dizaina patents etc.) un pārējie maksā vai sūkā pirkstu.
  12. Sāksim ar to, kā pareizi nosaukt to, ko tu vēlies izmantot :) https://laacz.lv/tmp/loc.php?vards=repozitorijs&dzimte=1 - repozitorijs (tas, viņš - ja vēlies draugu).
  13. werd

    OCTA API

    https://services.ltab.lv/lv/CheckOcta laikam būs īstais LTAB serviss bez liekas informācijas ievades
  14. Kur problēma nest līdzi stacionāro? Prasība ir "jāņem līdzi tikai savs dators".
  15. werd

    printful atsauksmes

    @Zefirs Vai nebūtu efektīvāk šo visu pajautāt viņiem pašiem?
  16. Manuprāt, summa ir vienāda ar vidējo no viņu potenciālā zaudējuma un tava potenciālā ieguvuma, ja nepārdosi un paturēsi sev. Pieņemot, ka tu pats to nelieto un arī neplāno lietot, kā arī pieņemot, ka šis uzņēmums ir kāds no Lursoftā atrodamajiem (kam publiskie finanšu rādītāji ir skumji) - pārsimts EUR max.
  17. werd

    Mekleju programetaju

    @st0ne 10-15x gadus atpakaļ šis vēl varbūt izietu cauri; šodien - nē. Ideja ir tik pat nenopietna kā piesolītais "avanss" :) 300 EUR var ieguldīt lietderīgāk - pietiek šo pokemonu lapu un portālu.
  18. Ja Smarty, tad prātā nāk 3x varianti: Būs jāuztur aizvēsturiski projekti, kuros tas tika izmantots, jo agrāk skaitījās "kruts" Būs jāizmanto jauniem projektiem, jo kāds vēl aizvien domā, kas tas ir "kruts" Gan, gan Jebkurā gadījumā, domāju, ka reti kuram ceļās roka sūtīt CV :)
  19. werd

    LV drosiba

    Šajā jautājumā pilnībā piekritīšu @codehighriga teiktajam. Kāda iespēja, ka cilvēks izveidos un uzturēs labas kvalitātes resursu, ja pat uzrakstīt garumzīmes nav spējīgs? Pokemonu spēlītes nekas vairāk.
  20. Paldies par info! :) Kādi rezultāti ar šo jauno procedūru?
  21. Šobrīd esam vēl neliela komanda - 2x PHP programmētāji uz vietas, 2x PHP remote, 3x PHP piesaistīti no partneriem uz projektu.
  22. Saņemam uzdevuma risinājumu (rekomendējam Github repo, bet nav obligāti). Ja ir Github profils, tad, protams, arī aplūkojam publiskos repo un dalību OS projektos un sociālo IT dzīvi kopumā Ja ir atsūtīts CV, tad, protams, iepazīstamies ar to Tāpat arī uzmeklējam personu iekš LinkedIn un papētam profesionālo vēsturi Iepazīstamies ar risinājuma aprakstu (ja tāds ir) un pašu kodu Aplūkojam koda stilu, struktūru, noformējumu, komentārus, sarežģītību, apjomu Detalizēti iepazīstamies ar realizēto biznesa loģiku Kādi pieņēmumi vai ierobežojumi tiek lietoti (piemēram, kādas vērtības tiek atļautas vai nē) Kādi robežgadījumi ir apskatīti un realizēti Kodu darbinām uz LEMP (Linux, Nginx, MySQL, PHP7), izmantojam Vagrant Šeit tad arī pēc vajadzības tiek izveidota DB utt. Pārbaudām testus (vienībtestus u.c., ja tādi ir) Līdz ar to arī testu koda pārklājumu (code coverage) Sagatavojam kopsavilkumu (pros & cons) un nosūtam to kandidātam Ja ir kādi jautājumi no vienas vai otras puses, tad tos arī izrunājam Ja kandidāts atbilst mūsu meklētajam, tad papildus arī piedāvājam tikties klātienē, lai iepazītos tuvāk
  23. Kaut kas uz to pusi.
  24. Šī uzdevuma struktūra nav tāda, lai pateiktu vai uzdevums ir izpildīts vai nē. Būtu muļķīgi uzdevumā nodefinēt jau gatavus vienībtestus un tai pat laikā prasīt izmantot TDD pieeju :) Arkbauer izpratnē senior programmētājs ir cilvēks, kas pats domā nevis vienkārši izpilda katru punktu no uzdevuma apraksta (monkey see - monkey do). Nē, mums tā nav. Es uzskatu, ka sekundes laikā nav iespējams objektīvi novērtēt programmētāju (it īpaši senior līmeņa). Mēs cilvēkus atlasām individuāli - viena mēraukla visiem neder.
  25. Jāpiekrīt @briedis teiktajam. Šis uzdevums tika veidots ar domu, ka to varēs izpildīt gan iesācējs (junior), gan pieredzējis (senior) programmētājs. Nekas konkrēts netiek "uzspiests", jo mēŗkis ir iegūt priekšstatu par kandidāta individuālajām spējām (spriestspēju, loģisko domāšanu, tehnisko izdpildījumu utt.). Ja ir vēlme izmantot kādu no ietvariem - droši. Ja šķiet, ka ir nepieciešama datu bāze vai sesijas - droši.
×
×
  • Create New...