pátek 8. dubna 2016

Linq - k čemu použít Aggregate

K jednomu z předchozích článků, ve kterém jsem dal k dispozici cheatsheet pro Linq, se mne jeden známý zeptal, k čemu že je dobrý Aggregate - vždy si zatím vystačil například se Sum, Count či Average.

Nejlépe se vysvětluje na příkladě a zabrousím do oblasti hudebních alb: máme řetězec obsahující seznam délek jednotlivých skladeb a chceme získate celkový čas alba. 

středa 16. března 2016

Příklad na pohovor s programátorem - hotovost v pokladně

Na blogu jsem uveřejnil několik příkladů z pohovorů s uchazeči o místo programátora. Dovolím si tedy uveřejnit jeden z dalších možných příkladů, se kterým se lze setkat - na předešlé příspěvky jsem dostal emailem poměrně dost reakcí a překvapilo mne, že poměrně hodně lidí považuje příklady za jednoduché. Těžko to soudit, ale z mých několikaletých zkušeností ze zadávání podobných úkolů zvládne zadání implentovat méně než třetina kandidátů - a  zcela uspokojivých jsou pak tak jedno až dvě řešení z deseti.  Ono v poklidu u pracovního stolu vše vypadá jinak.

středa 10. února 2016

Vícevláknové zabíjení draků

Jeden z nejlepších průvodců základy vícevláknového programování pro mne byl a vlastně pořád je web od Josepha Albahari na adrese http://www.albahari.com/threading/.

Stručný a jasný popis, navíc ke stažení jako pdf, i když napsaný před mnoha lety, tak pořád aktuální.  A může být něco ještě lepšího?


pondělí 8. února 2016

LINQ - cheat sheet

Ve třech příspěvcích v poslední době jsem zmínil použití LINQu - byl to příspěvek jak vytvořit xml vstup pro SQL server, pak popis distinctu pěktrát jinak a nakonec byl LINQ použit i v řešení úlohy z pohovoru v článku Uspěli byste na pohovoru? Podruhé
LINQ je na jednu stranu jednoduchý prostředek pro práci s kolekcemi, na druhou stranu je velmi mocný a dovoluje jednoduše vyjádřit operace, které by jinak vyžadovali složitější zápis ve smyčkách. Nehledě na možnosti, které přináší při práci s data v databázích a datových souborech.

pátek 5. února 2016

Uspěli byste na pohovoru? Podruhé...

Jednou za čas přibíráme do týmu nové lidi - což znamená hodně pohovorů s uchazeči.  Jak jsem už napsal tady, tak spíše upřednostňuji rozhovor nad kouskem kódu - přitom se nejedná o žádné záludnosti. Uchazeč dostává také za úkol něco malého naprogramovat - jen je trochu potíž najít to správné zadání. Úkol by neměl být úplně triviální, ale zase nemůže být těžký. Většina lidí je navíc nervozní, ať již více čí méně a i to je třeba zohlednit.  Takže následující úloha se může v případě, že si ji čtete doma, v klidu, jevit jako velmi jednoduchá, možná až primitivní.

Monitor pro vývojáře

Nedávno jsem si vybral laptop, nyní jsem si chtěl dopřát i lepší externí monitor - obrazovka laptopu je malá a pohodlí práce před velkým monitorem je k nezaplacení. U výběru pracovního monitoru ale mám jasno - už dlouho používám jen monitory značky Dell a řady Ultrasharp. Poměr cena a užitná hodnota mi u nich přišel vždy nejlepší, navíc polohovatelný stojan je pro práci příjemný, stejně jako možnost natočit si třeba druhý monitor "na výšku".

pondělí 1. února 2016

Visual Studio 2015 - deset zajímavých rozšíření


Visual Studio je v nové verzi 2015 zase o kousek dokonalejší než předchozí verze. Ale samozřejmě není naprosto dokonalé a tak při své práci pořád používám nějaká rozšíření. Pokud možno bezplatné - šetří se všude a tak koupě licence nějakého ryze komerčního produktu často není možná. Takže tady je seznam deseti rozšíření, která mám nainstalována.