Soci (Soczó Zsolt) szakmai blogja

2008.12.19.

Boldog Karácsonyt és BUÉK-ot

Filed under: Élet,Személyes — Soczó Zsolt @ 20:33

Folyamatban van az ADSL váltásom, eddig a cég fizette, most már én, és sajnos 2008-ban ez még nem megy szolgáltatás-kiesés nélkül. Ezért a következő időszakban bizonytalan a net elérésem, enyhébb idő esetén a kert végéből, létráról látom a szomszéd WIFI-jét, így néha olvasok leveleket. Egészen addig, míg vissza nem adom a cégnek a laptopot, az új ugyanis csak januárban érkezik meg (durva gép lesz).
Van itthon egy asztali gép is, de azt nem viszem ki a kertbe. :)
Szóval ha valami fontos kérdés van, kérem, telefonon keressetek, egyébként meg pihenjetek.

Boldog Karácsonyt.

soci

Update: alaptalanul ironizáltam a magyar helyzeten. Tegnap jött az SMS, hogy kész az új accountom. Kipróbáltam, és tényleg. Most párhuzamosan megy a két előfizetés. Mégis csak zökkenőmentes volt a váltás. Valószínűleg a belső embernek köszönhetően, ugyanis előtte este még csak nem is volt rögzítve a megrendelésem a thome webshopban. :)

2008.12.16.

Taposással termelnek energiát a japán metróban

Filed under: Élet — Soczó Zsolt @ 10:58

Zindex.

Imádom ezeket az eszement ötleteket.
Fizika alapozó kérdés: nálunk nem használják ki a léptekből származó energiát. Mi lesz Budapesten azzal a sok energiával, amiből a japánok a plazmákat üzemeltetik? Ezt is ellopják? GYF fűti vele az anyja lakását? :)

2008.12.11.

Debugolás a .NET fw. forrása segítségével

Filed under: .NET,C#,CLR,Debugging,Szakmai élet,Visual Studio,VS 2008 — Soczó Zsolt @ 12:32

Kaptam egy igen nehezen megközelíthető problémát, amelyben a fókusz a TAB-ra átlépett egyes controlokat. Nem egy triviális TabStop=false probléma volt.
VS 2005-ös projektekről van szó, átkonvertáltam őket 2008-ra, hogy tudjam a fw. forráskódját is debugolni. Az _NT_SYMBOL_PATH= nekem be van állítva a gépen a publikus os szimbólumokra (elsősorban ahhoz amikor WinDbgozok), emiatt nem tudtam a vsből .net fw.-öt debugolni, mert előbb lehúzza a stripped szimbólumokat, a teljeshez már hozzá se nyúl. Ezért egy bat-ból indítom a vs-t, előtte kiütve az eredeti _NT_SYMBOL_PATH-t.
Így már ment a fw. forrás debug, de mivel a clr az ngenelt optimalizált kódot töltötte be, ezért nagyon sok típus belseje nem látszik normálisan. Erre megoldás itt található. Le lehet tiltani, hogy a CLR az ngenelt kódot töltse be, így már rendesen lehet debugolni.
Lehetne, ha nem lenne elcsúszva némelyik forráskód a pdb-ben található sorszámoktól. Ilyenkor van az, hogy teljesen más sorokon lépkedünk végig, mint amit a source ablakban látunk, pl. kommenteken lépked végig a debugger.
A megoldás erre egyszerűbb volt, mint gondoltam volna: próbaképpen kitöröltem 3 sort pl. a Control.cs elejéből, így visszaállt a szinkron.
Maga az alapprobléma egyébként abból adódott, hogy egy kompozit Third Party Contol explicit letiltotta
a TAB-olást, a ControlStyle-ból kivéve a Selectable flaget.

2008.12.02.

Vigyázni az XPathDocumenttel

Filed under: Uncategorized — Soczó Zsolt @ 23:52

Egyik régi ismerősöm keresett meg egy elég húzós problémával. Egy webszerviz egy saját típusból két példányt kap paraméterül, ám csak az első megy át, a második null lesz. Ha tömbben adják át őket, akkor is. Ha felcserélik a kliens proxy oldalán, akkor is a második null.
A típus saját XML Serializálást használ, ez már eleve gyanús volt, azonban elsőre nem tűnt fel benne semmi ravaszság. Beraktam egy kis WebService Trace Extension kódot, hogy lássam, rendesen elküldi-e a kliens a SOAP csomagot, de igen, a boríték sértetlen és teljes volt.
A szerializáló kódot figyelmesebben megnézve aztán előbukkant a probléma. A saját serializálásuk nem direktben használta a kapott XmlReader-t, hanem egy XPathDocumenten keresztül. Így magasabb absztrakciós szinten lehet programozni, ami ebben az esetben nagy könnyebbség. Igen ám, de az XPathDocument cache-el. Nem csak simán, hanem előreolvas a drága, ami neki jó, mert így pl. meg tudja mondani van-e gyermekeleme egy elemnek, stb. Csakhogy esetünkben annyira mohó volt, hogy a kapott XmlReader-t teljesen végignyalta, így az első paraméter deserializálása után a reader már a SOAP csomag végén állt, így a következő deserializálás megkapta a nagy semmit.
Persze belegondolva semmi panasz nem lehet az XPathDocumentre, senki nem mondta, hogy nem olvashat előre. De elsőre ez nem esett le nekem se.
Mi a megoldás erre a problémára? Pőrén az XmlReadert kell használni, kínosan ügyelve arra, hogy minden típus és beágyazott típus pontosan csak annyit tekerje előre a readert, hogy a saját adatait ki tudja olvasni, egy centivel se előbbre. Disciplined programozó kell ehhez, mint ahogy a tőzsdei kereskedéshez is, Elder szerint. :)

Windows Internals vizsga sikerült :-)

Filed under: Élet,Személyes — Soczó Zsolt @ 23:12

Egy MVP-s papírhoz kellett az MCP vizsgáim listája, ezt lemásolva véletlenül vettem észre, hogy közben a beta vizsgát feldolgozták, és sikerült a Windows Internals vizsga is. Juhéjj. :)
Nem számítottam rá. Ettől persze nem száll el a pofám, már megjött az amazontól az Advanced Windows Debugging és a Memory Dump analízis, jövő év elején ezek kerülnek sorra, talán addigra a Windows Internals újabb kiadása is kijön. Ütős kombó lesz.
Egyelőre viszont WPF-et tanulok, ezt már régóta halogatom, de most találtam egy házibarkács problémát, tőzsdei automatizált kereskedési algoritmusok backtest-jét, ehhez nem árt némi vizuális infó az árakról, indikátorokról, stb., ehhez meg pont jó a WPF. A WPF-et egyelőre nehezebben fogom, mint a low-level Windows cuccokat, fogjuk ezt a koromra. :) Valójában valószínűleg azért nehezebb átlátni, mert az XAML miatt is és maga a WPF frameworkje miatt is nagyon magas absztrakciós szinten kell gondolkodni, ehhez meg idő kell, meg kell szokni az új fogalmakat, absztrakciókat. Mint amikor új nyelvet tanul az ember.

És végül, ha már bementem az MCP site-ra, itt az aktuális vizsgalistám. 2 beta még nincs rajta, mert még nem értékelték ki. Jövőre az a tervem, hogy megcsinálom az összes hiányzó vizsgát, ami nekem még fontos, azaz a 3.5-ös vizsgkákat, WCF, WPF, WWF. Magas labda, majd meglátom mennyi idő meg lelkesedésem lesz hozzá.

[source=’c’]
Exam ID Description Date Completed
451 PRO: Designing Database Solutions and Data Access Using Microsoft SQL Server 2008 Sep 30, 2008
660 TS: Windows Internals Aug 05, 2008
432 TS: Microsoft SQL Server 2008, Implementation and Maintenance Jul 31, 2008
620 TS: Configuring Microsoft Windows Vista Client May 09, 2007
431 TS: Microsoft® SQL Server™ 2005 – Implementation and Maintenance May 03, 2007
442 PRO: Designing and Optimizing Data Access by Using Microsoft® SQL Server™ 2005 Dec 19, 2006
554 UPGRADE: MCSD Microsoft® .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft® .NET Framework: Part 2 Mar 06, 2006
553 UPGRADE: MCSD Microsoft® .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft® .NET Framework: Part 1 Mar 06, 2006
551 UPGRADE: MCAD Skills to MCPD Web Developer by Using the Microsoft® .NET Framework Mar 03, 2006
552 UPGRADE: MCAD Skills to MCPD Windows® Developer by Using the Microsoft® .NET Framework Mar 03, 2006
447 UPGRADE: MCDBA Skills to MCITP Database Administrator by Using Microsoft® SQL Server™ 2005 Dec 16, 2005
443 PRO: Designing a Database Server Infrastructure by Using Microsoft® SQL Server™ 2005 Dec 16, 2005
444 PRO: Optimizing and Maintaining a Database Administration Solution by Using Microsoft® SQL Server™ 2005 Dec 02, 2005
441 PRO: Designing Database Solutions by Using Microsoft® SQL Server™ 2005 Dec 02, 2005
229 Designing and Implementing Databases with Microsoft® SQL Server™ 2000 Enterprise Edition Dec 21, 2004
340 Implementing Security for Applications with Microsoft Visual C#® .NET May 03, 2004
306 Developing and Implementing Windows®-based Applications with Microsoft® Visual Basic® .NET and Microsoft® Visual Studio® .NET Aug 22, 2003
300 Analyzing Requirements and Defining Microsoft .NET Solution Architectures Nov 07, 2002
305 Developing and Implementing Web Applications with Microsoft® Visual Basic® .NET and Microsoft® Visual Studio® .NET Jul 12, 2002
310 Developing XML Web Services and Server Components with Microsoft® Visual Basic® .NET and the Microsoft® .NET Framework Jun 25, 2002
228 Installing, Configuring, and Administering Microsoft® SQL Server™ 2000 Enterprise Edition Oct 11, 2001
100 Analyzing Requirements and Defining Solution Architectures Oct 13, 2000
176 Designing and Implementing Desktop Applications with Microsoft® Visual Basic 6.0 Sep 07, 2000
175 Designing and Implementing Distributed Applications with Microsoft® Visual Basic 6.0 Jun 21, 2000
029 Designing and Implementing Databases with Microsoft® SQL Server 7.0 Mar 01, 2000
079 Implementing & Supporting the Microsoft® Internet Explorer Admin Kit for Microsoft® IE 4.0 Nov 16, 1999
059 Internetworking with Microsoft® TCP/IP on Microsoft® Windows NT™ 4.0 Oct 27, 1999
058 Networking Essentials Aug 17, 1999
067 Implementing and Supporting NT™ Server 4.0 Mar 03, 1999
068 Implementing and Supporting NT™ Server 4.0 in the Enterprise Feb 23, 1999
073 Implementing and Supporting NT™ 4.0 Workstation Dec 21, 1998
[/source]

Powered by WordPress