Vybírám notebooka – I.

Must-have

  • 13,5″-14,5″, kvalitní display (ideálně IPS)
  • váha < 1,7kg
  • CPU Haswell – kvůli výdrži baterií, očekávám tak 8hod+
  • SSD (nebo HDD vyměnitelný za SSD)
  • 6-10 GB RAM, nejspíš 8 GB (paměť kupodivu dost žere baterie)
  • dockovatelnost (minimálně přes USB dock)
  • durable, business-targeted (tj. nechci žádný consumer-targeted low-cost)
  • podsvícená klávesnice
  • použitelný touch-pad (bohužel není samozřejmost)

Nice-to-have

  • 3G modem (poslední mé dva notebooky Lenovo TP X2xx ho měly, ale asi se dá žít i s tetheringem)
  • touch (ještě nejsem rozhodnut, asi není podmínkou)
  • fingerprint-reader
  • dostupnost do konce roku 2013 (nespěchám, ale zase nechci čekat věčně)
  • docela rád bych se vešel do 40 000 Kč bez DPH (VO), ať nemusím řešit odpisy

Nepotřebuji

  • track-point
  • DVD
  • vysoké rozlišení (chci na to vidět, když ho mám na klíně a Windows nejsou zrovna špička adaptability, co se scalingu UI týče), optimum pro mě nejspíš bude HD+ (1600x900px)

Co jsem zatím shromáždil

  • Lenovo se asi rozhodlo, že své jinak skvělé stroje ThinkPad pohřbí nepoužitelnými click-pady. Nový ThinkPad T440s, v který vkládám velké naděje, vypadá, že má ohavný click-pad se zdvihem 1mm. Což bude nejspíš strašný, musím to dojít někam vyzkoušet.
  • Lenovo X1 Carbon zatím nemá ohlášenu Hasswell verzi (předpokládá se koncem roku) a trochu doufám, že to bude můj únik od T440s, pokud na něm něco nezmrví. Zkoušel jsem jeho click-pad a ač to má daleko k ideálu (MBA), tak je to alespoň hladké a docela rozumně clickací jen v rozích (i když majitel X1 na to nadával).
  • Ještě chci mrknout na Lenovo Yoga 2 Pro, nebo něco takového. Jsem docela malůvkář a docela mě láká představa, že bych občas něco skicnul rovnou na tablet, ale asi je to sci-fi.
  • Dell má v Haswellu aktuálně zřejmě jen 12″-12,5″ modely. Uvidíme, co ještě přijde. Koukám teď, že by to měla být E7440 jako 14″ s Haswellem, budu muset prozkoumat.
  • Mac Book Air 13″ 2013 má skvělý touchpad a i když má jen dobrý TN display, ve spojení s OS X je to skvělý stroj (líbí se mi třeba i to překrytí displaye sklem). Bohužel potřebuji stroj pro Windows a tam už to zřejmě s MBA nebude tak žhavé. Když pominu trochu problematické rozložení klávesnice, na které by se asi dalo zvyknout, tak prý pro Windows nemá Apple moc dobré drivery. Výsledkem pak třeba je, že baterie výrazně méně vydrží. (BTW: Za skvělé považuji dvouprstý right-click a scrollování. Asi se budu pokoušet něco takového mít i pro Windows. )
  • SONY, Fujitsu, Samsung , Toshiba a možná ASUS jsou pro mě značky ve druhé skupině, kterou budu muset teprve prozkoumat. Doufal jsem, že to nebude potřeba, a že bude na výběr Lenovo/Dell.
  • ACER, GIGABYTE, MSI, HP jsem zatím vyškrtnul jako značky, kterým bych se pocitově raději vyhnul.

Budu průběžně aktualizovat, jako svůj záznamník, a kdyby někdo řešil něco podobného. Vítám jakákoliv doporučení…

Řízení SW projektů a vztahů se zákazníky – slides [MS Fest Brno 2013]

Slides z mé dnešní přednášky pro MS

Jakmile dostanu záznam z přednášky, bude vystaven na našem YouTube Channelu.

Optimalizace webových aplikací ASP.NET – záznam, slide a dema [MS Fest 2013]

Slide (jeden) a dema z mé dnešní přednášky pro MS Fest 2013 v Brně:

Z přednášky se pořizoval záznam, který najdete na našem HAVIT YouTube Channel:

Windows Update Cleanup – nová volba Disk Cleanup utility

V jedné z posledních aktualizací Windows přibyla do Disk Cleanupu volba Windows Update Cleanup, která vyčistí z disku instalační soubory aktualizací Windows.

image

Konečně, v mém případě to byly 3GB. Když jsem se je kdysi pokoušel „vyčistit“ ručně, dost mi pak haprovaly instalace/odinstalace. Nová cesta by měla být bezpečná.

Databáze zůstane viset ve stavu „Restoring“

Pokud Vám zůstane databáze z jakéhokoliv důvodu viset ve stavu Restoring, znamená to, že sled předcházejících událostí SQL server interpretoval jako nedokončenou snahu o obnovení databáze. Legitimně se v tomto stavu databáze nachází, pokud chcete např. přehrát nad obnovenou zálohou ještě transaction-logy, atp.

Pokud tento stav pro Vás není žádoucí, nic dalšího už nechcete udělat a potřebujete databázi oživit, potom pomůže

RESTORE DATABASE MyDatabase WITH RECOVERY

…kde MyDatabase pochopitelně nahradíte názvem své DB.

Lenovo ThinkPad X230 – zkušenosti po roce používání

Již zhruba rok používám jako svůj vedlejší počítač notebook Lenovo ThinkPad X230, který jsem si pořídal jako nástupce předchozího Lenovo ThinkPad X201, který jsem již zmiňoval. Protože nyní hledám nástupce, pokusím se shrnout své zkušenosti s X230, dokud ho ještě mám.

Konkrétně jsem si vybral model 2320-2LG (i7 3520M, 8 GB RAM, SSD 180GB) a dokoupil jsem si do něj 3G modul Ericsson H5321gw, což mě dohromady svého času stálo cca 40 000 Kč + DPH.

Celkový dojem

Musím říct, že až na ClickPad (viz níže) se jedná o na svou dobu špičkový notebook s plnou výbavou pro pracovní použití a důstojný nástupce mého předchozího X201. S váhou kolem 1.5kg ho sebou nosím neustále a používám denně. Baterie i po roce vydrží kolem 5 hodin běžné práce a tak doma většinou nechávám i adaptér (který je mimochodem zoufalost, ale to pořád ještě skoro každý).

ClickPad – zoufalost

ClickPad, jak tomuto typu touch-padu Lenovo říká, je naprosto zdrcující zoufalost, která mě dohnala po mnoha noteboocích používaných bez myši až k neustálému vláčení myši sebou. Nikdy mě nenapadlo, že bych měl něco takového u notebooku řešit a u takové základní věci čekám, že prostě funguje. Moje předchozí X201 měla sice touch-pad malý, ale plně funkční. Tahle zrůda je prostě nepoužitelná, a kdybych to byl býval věděl, ten notebook bych si i přes jeho jiné nesporné výhody nikdy nekoupil.

Šoku jsem se dočkal už po prvním spuštění s předinstalovaným OS. Při přejíždění prstem po touch-padu kurzor po obrazovce poskakoval, jako kdyby bylo zapnuté jakési snap-to-grid 5x5px. Další šoky jsem zažíval při pokusech o „tapping“ (kliknutí krátkým dotekem), při kterém kurzor obvykle odskočí kamsi o 10-20px mimo.

I přes mnoho updatů driverů UltraNav a tuny pokusů s nastavením, se mi nepodařilo tento díl zprovoznit do použitelné podoby. Je to sice nyní mnohem lepší, ale přesto nepoužitelné. Bohužel to dělá úplně všem a jedná se „vlastnost“, viz například tato diskuze:

Plus/minus

+ váha 1.5kg
+ výkon
+ vestavěný 3G modul (i když zvažuji, že pro příští notebook 3G vyškrtnu z must-have, protože stejně dobře funguje tethering z iPhone)
+ provedení ThinkPad (sice už to není, co bývalo, ale stále se jedná o velmi bytelný a kvalitní kousek)
+ IPS display (na rozdíl od předchozího zoufalého TN na X201)
+ klávesnice (chicklet jsem se bál, ale je naprosto v pohodě, navíc oproti X201 má lepší rozložení v oblasti Esc, F1, …)
+ podsvícení klávesnice (již nikdy notebook bez něj)
+ výbava (dockovací stanice součástí dodávky, RJ-45, VGA, USB 3.0, mini-DisplayPort, …)

– !!! ClickPad (viz výše) – Kdybych to byl býval vědět, notebook bych nekupoval.
– oštípané rohy – Ač si nejsem vědom žádných pádů, na víku i na šasi mám oštípané rohy plastů. Objevilo se mi to hned v začátcích používání notebooku, což je podezřelé, protože žádný z mých předchozích notebooků nikdy nijak orubaný nebyl.
– humpolácký napájecí adaptér (je to klasika, ale v dnešní době už bych čekal nějaký pokrok. Napájecí kabel je poměrně tlustý, klasicky se to omotává suchým zipem, ve srovnání s MBA-adaptéry bída.)

Po čem pokukuji

Notebook chystám vyměnit, jakmile mi ten správný model padne do oka. Tentokrát chci jít do trochu většího, protože na 12.5″ už při použití na klíně hůř vidím. Problém samozřejmě je, že to není ani tak o velikosti displaye, jako o jeho rozlišení, resp. DPI/nits/… a také o (ne)schopnosti OS přizpůsobit velikost prostředí displayi (nechápu dnešní 12″ FullHD, ale asi jsem holt slepej). Nejspíš to tedy bude 14″ (asi HD+), protože do 12.5″ jsem šel hlavně kvůli váze kolem 1.5kg, což už dnes není problém dostat i ve 14″. Určitě chci nový Haswell, kvůli výdrži baterií. Dilema je, jestli dát přednost „air“ provedení (např. Lenovo X1 Haswell, nebo MacBook Air), na které se nevejde VGA ani RJ-45, nebo jestli přežít trochu tlustší formát s plnou výbavou (např. Lenovo T440s). Každopádně už se neodvážím koupit notebook bez fyzického vyzkoušení (hlavně touch-padu). Zahlédl jsem i upoutávku na nové Lenovo Yoga Pro 2, nebo co to bylo, ale budu to muset podrobněji prozkoumat (když to není řada ThinkPad, bojím se o kvalitu provedení).

Zvažuji i možnost, že bych zrušil svůj hlavní desktop a pracoval i v práci na notebooku (samozřejmě přes dock). Trochu se toho ale ještě bojím.

Taky přemýšlím, jestli jít do Touch. Není mi blízká myšlenka, že bych měl display zamatlaný, na druhou stranu na takový iPhone šmatlám furt a není problém ho udržet čistý. Když jsem viděl některá videa, co dneska touch umí, moc mě to neoslovilo. Rozhodně to nevypadalo jako ovládání iPadu (třeba browser, scrollování, zoomování), ale spíš jako marná snaha přemluvit i386 k nějaké akci.

Pozvánka na MS Fest: Řízení SW projektů a vztahů se zákazníky

I letos jsem kývnul na pozvánku k účasti na MS Festu, který se tentokrát koná v Brně (12.+13.10.2013), Praze (2.+3.11.2013) a Ostravě (30.11+1.12.2013). V Praze to vypadá na tři přednášky, nejbližší je nicméně Brno, kde budu mít nejspíš přednášku jedinou – na téma „Řízení SW projektů a vztahů se zákazníky“.

Poprvé se pouštím do netechnických témat a rozhodně nečekejte, že bych Vás hodlal obšťastnit nějakým teoretickým výkladem o manažerských metodikách, nebo přesvědčovat o dokonalosti nějakého CRM.

Naopak počítám, že se podělím s ryze empirickými poznatky a praktickými zkušenostmi, které jsem za těch cca 16 let v oboru získal. Čím se dá zákazník získat a čím ztratit? Co umožňuje dostrkat projekt vývoje software k cíli a co je naopak byrokratická drbačka bez efektu?

S mým pohledem na věc můžete seznámit v Brně v neděli 13.10. od 14:00, v Praze v neděli 3.11. od 10:00, nebo v Ostravě 1.12. od 15:15.

Podrobnosti k ostatním dvěma pražským přednáškám později.

Mac: Uložení více listů Excelu do jednoho PDF souboru

  1. Vybrat listy, které chcete mít součástí PDF pomocí Cmd + Click.
  2. Tisk (Cmd + P).
  3. PDF / Save PDF… (ponechat vybráno Active Sheets)

Na rozdíl od volby „Entire Workbook“, která uloží každý list jako samostatné PDF, tímto postupem získáme jedno PDF se všemi listy.

SQL: Jsou dvě data (small)datetime ze stejného dne?

Potíž je v tom, že typ (small)datetime obsahuje mimo údaje data i čas. Můžeme samozřejmě zařídit, aby naše záznamy měly tento čas 00:00, ale stejně občas na tento problém narazíme.

Měli bychom rozlišit dvě situace, porovnávání s pevným dnem, nebo hledání shod ve variabilních datech.

Hledání shod ve variabilních datech

Jsme zde v situaci, kdy obě porovnávané složky jsou variabilní, u obou se musíme vypořádat s ignorováním složky dne.

SQL Server 2008 a novější verze mají datový typ date. Pokud tedy nejsme zrovna na nějaké pravěké verzi SQL, ukazuje se jako nejrychlejší (ač možná překvapivě) tato konverze:

SELECT MyColumn FROM MyTable
	WHERE CONVERT(date, DateColumn1) = CONVERT(date, DateColumn2)

Pro starší verze SQL serveru je použitelných několik o dost méně výhodných (pomalejších) podob. Protože SQL 2005 a starší již dnes považuji za pravěk, nebudu již rozebírat jejich výhody/nevýhody a rychlost:

...
WHERE
   (YEAR(Datum1) = YEAR(Datum2)
   AND (MONTH(Datum1) = MONTH(Datum2)
   AND (DAY(Datum1) = DAY(Datum2)

WHERE 
   (YEAR(Datum1) = YEAR(Datum2))
   AND (DATEPART(dayofyear, Datum1) = DATEPART(dayofyear, Datum2))

WHERE CONVERT(varchar(10), Datum1, 101) = CONVERT(varchar(10), Datum2, 101)

WHERE FLOOR(CONVERT(float, Datum1)) = FLOOR(CONVERT(float, Datum2))

Porovnání s pevným dnem

Trochu jiná situace nastává v okamžiku, kdy jeden z údajů je pevný. Například hledáme záznamy založené určitého dne

DECLARE @DateFilter smalldatetime
SET @DateFilter = '20090305'

SELECT Created FROM MyTable
	WHERE
		(Created >= @DateFilter)
		AND (Created < DATEADD(day, 1, @DateFilter))

…zde s výhodou celý problém převádíme na porovnávání s konstantami, a pokud máme k dispozici vhodný index, dokonce na operaci Index Seek.

Kupodivu úplně identický execution plan (Index Seek) a se stejnými časy dotazu (testováno na obrovských datech na MS SQL Serveru 2012) dostáváme i pro podobu:

DECLARE @DateFilter date
SET @DateFilter = '20090305'

SELECT Created FROM MyTable
	WHERE CONVERT(date, Created) = @DateFilter

Windows Live Writer: Český spellchecker do anglické verze

Mám nainstalovanou anglickou verzi Windows Essentials 2012 (resp. Windows Live Writer z nich) a nejprve jsem se neznaje situace smířil s tím, že spellchecker je v tomto podružném produktu jen anglický. Omylem jsem ale na druhém počítači nainstaloval českou edici a byl pak mile překvapen, že mi to kontroluje češtinu.

Stačila pak již jen chvilka pátrání, abych zjistil jak češtinu dostat do anglické verze Windows Live Writeru:

  1. Spusťte „langselector“ (ať už Win+R, nebo přes vyhledávací box v menu Start).
  2. Ten slouží k přepnutí uživatelského rozhraní Windows Essentials do jiného jazyka, což způsobí i download a instalaci příslušného jazyka, pokud ho nemáte.
  3. Zvolte tedy „Čeština“ a přepněte celé Windows Essentials do češtiny.
  4. Spusťte Windows Live Writer a přepněte si v Nastavení spellchecker na Češtinu.
  5. Spusťte „langselector“ znovu a přepněte Windows Essentials zpět do angličtiny.
  6. …čeština už vám v nabídce spellcheckeru zůstane.

Nejspíš prostě samotný fakt doinstalace dalšího jazyka přepnutím na něj doplní nabídku spellcheckerů a bod 4 je možné pak udělat kdykoliv, to jsem neřešil.

Proč to nějak nesdílí spellchecker s instalovanými Office neřeším. :-)