Еще фото с PDC

Не мои, фотографировал коллега.

В-основном там фотографии с вечеринки в Universal Studio. Выкладываю для собственного удовольствия, под катом ничего интересного :)

Continue reading

PDC 2008 – гики в естественной среде

Это такой будет дыбровый пост, “о времени и о себе”, дневник наблюдений за живой природой и т.п. Session minutes я буду складывать отдельно и скоро даже покажу куда.

Фото есть, но меньше, чем хотелось бы. Пора копить две штуки баксов на пристойный аппарат.

PS Добавил возможность уведомления о комментах по е-мэйлу. Спасибо Богдану, он меня подвигнул :)

Ну что, вперед, под кат?
Continue reading

Вернулся с Microsoft PDC 2008 (Los Angeles)

Усталый, довольный, познакомившийся с кучей интересных людей. Впитывал информацию до закипания мозга. Добыл три книжки, две из них подписал у авторов. Участвовал в работе стола экспертов по метанию овец. (Все помнят, что я по призванию менеджер овцеметателей?)
(фото экспертов под катом)
Continue reading

GIS: как китайцы чинили перспективную коррекцию :)

http://cosmiclog.msnbc.msn.com/archive/2007/12/04/495870.aspx

Я думаю, дело было так: отсняли они кучу полос (сами понимаете, спутниковое фото – это одно длииииииииииииииииннное спагетти), а тут пришел чиновник и говорит – давайдавай, конференция про наш новый спутник будет через час!
А у них система новая, автоматизированного софта для перспективной коррекции еще нет, а ручками уж больно ломливо писать. Даже если существующий код присобачивать, трахаться как минимум неделю (просто потому что там на один снимок полтора десятка параметров приходится). А показывать-то что-то надо.

Ну, они тогда взяли фотошоп и сшили эти девятнадцать полос. Получили то, что получили – красивую картинку и международный скандал :) :)

update: Это я приврал. Софт у них есть. А было проще. (смотреть тут: http://www.planetary.org/blog/article/00001248/) Пришел чиновник и говорит – что это у вас на стыках хрень какая-то? Весь мир ведь смотреть будет! Надо чтобы красиво!
Ну, они тогда взяли фотошоп и… (далее то же, что и выше)

CodeCamp 2007, Sunday, 2.45PM

CodeCamp 2007, Sunday, 2.45PM

Robert Hope [info] presents:
Generics from top to bottom [description]

Author’s page: http://www.sanluistech.com

Agenda: lists, generic methods, generic classes, anonymous methods, List vs ArrayList, using generics with Enum (again Reflection), using generics with Clone (again Reflection), IComparer vs anonymous delegate.

Nothing really new to me in theory, but some nice applications of generics.

Worth working with? Sure.

PS Tip: use of default(t)
PS Tip: to resolve the name: rclick-> resolve->using libraryname adds ‘using’ directive on top automatically. Cool.

CodeCamp 2007, Sunday 10.45 AM, 1.15PM

CodeCamp 2007, Sunday 10.45AM, 1.15PM

Chris Mullins [info] presented:

Concurrency and threading with .NET [description]

Yeah I know about threading. What I didn’t know is little .NET tricks and tips related to threading.

Covered: available heap space on x86 systems, thread memory consumption, CLR-managed threads: ThreadPool pros and cons, Async I/O (see FileStream.BeginRead for sample code) pros and cons, timers, RegisterWaitForSingleObject, thread abuse (I wonder… ‘expanding down the WCF’ anyone?)

Did you know that .NET thread inside of lock() block is automatically promoted to ‘Above average’ priority by CLR?

Tips: When you create a thread, give the name to it. Makes life easier.

Tool: WinDbg and Son of Strike

Worth working with? Sure. As a matter of fact, I am going to invite him to ESRI (if my mgr approves) to give full versions of his presentations.

ALSO, VERY NEXT SESSION:

Chris Mullins [see above for info] presented:
.NET Garbage Collection [see above for descriptions]

Covered: generational garbage collection, Server CLR, Workstation CLR, Concurrent and NonConcurrent CLR modes.

Also covered: weak root references (useful for caching)

Useful info: Richter’s Garbage Collection column in MSDN

Also covered: abuse of GC.Collect() and memory fragmentation problem. CLR performance counters related to GC. Profiling memory leaks. Abuse of Finalizers.

Tool: Scitech Memory Profiler (the best)
Tool: Red-Gate Memory Profiler (expensive)
Tool: VSTS Memory Profiler (expensive, lousy, sometimes is good)
Tool: CLR Profiler from MS (free, you get what you pay for)
Tool: WinDbg, Son of Strike (use only as last resort)

Did you know that registering event handler actually creates a reference? Statics of that class and event handler itself are not deleted unless you do this in Dispose(). NOTE: Check for details

NOTE: COM and Win32 calls pin memory and create memory fragmentation.

Book: Jeff Richter “CLR via C#” and his other book. Also, check blogs of MS-ers on GC topics.

CodeCamp 2007, Sunday 9.15AM

CodeCamp 2007, Sunday 9.15AM

Anand Iyer [info] [MS] presented:
Create ‘Slick’ mashups with Popfly [description]

Link: http://www.popfly.ms
Requirement: Silverlight client installation, MS Live Id account

Well, it’s really ‘slick’ but kinda… proprietary-ish. For instance, all your mashups are stored|saved on popfly.ms. You can export them as sidebar widgets for Vista, however.

Unfortunately, I skipped session about Google Mashup Editor, so I really can’t compare right now.

Author’s blog: http://artificialignorance.net

Worth working with? Ok.

CodeCamp, Saturday, 5.15PM

CodeCamp, Saturday, 5.15PM

Mathias Brandewinder [info] presented:
Test Driven Development with NUnit [description]

I am sad they didn’t have ‘Beginning Beginner’ category. Left in 30 minutes. ’nuff said.

Tool: NUnit

Advices to presenter: (1) calm down (2) stop moving the mouse erratically all over the screen (3) go less ‘beginner’ already.

Worth working with? Who knows…

CodeCamp, Saturday, 3.45PM

CodeCamp, Saturday, 3.45PM

Dave Nielsen [info] presented:
Mashup APIs and who’s using them [description]

It was not a workshop, more of a discussion panel.

He described a broad picture of Web services and APIs. Very interesting and entertaining for narrow-minded programmer like me. I would like to chat with Dave some time again. Unfortunately, next session was coming, so I had to leave. (to my disappointment – see the next post).

I said to staff that they should introduce ‘discussion panel’ presentation type and move all these panels to the end of the day, to leave some time for the discussion itself. :)

(if you already know what the web service is, you can skip this post. I am giving this info for the sake of completeness)

API Types (broadly): Data, Service, Communications, Storage
API Formats (broadly): Name/Value pairs, POX (plain ol’ XML), REST, RSS\ATOM, SOAP\XML Schema, AJAX\JSON, Flex, Silverlight – and others.
API Catalogs (some): StrikeIron, XMethods, Programmable Web, API Finder, Remote Method, IBM SOA, eSigma
(I also add ESRI’s Geography Network)

Sample mashup link: http://housingmaps.com

Tool: Notepad2

Links: Dave is all over the Web :)

Любит поговорить.

Worth working with? Sure!

CodeCamp, Saturday, 1.45PM

CodeCamp, Saturday, 1.45PM

Deborah Kurata [info] [inStep technologies] presented:
Best kept secrets in .NET [description]

It’s actually ‘.NET hacks in Visual Studio, for VB and C#’.

I finally got formally introduced to snippets. Finally a VS customization that I can do without VBA Macro Editor :)

Covered: Nullable and its use, Debug.Print (yes I know it exists, it’s just hard to get used to!), static member String.Format() (oh yeah I somehow missed this as well), ‘using’ with IDisposable objects, ‘active windows’ triangle button, some Reflection (binding to Enum etc), some anonymous delegates, using writeXML method of DataTable (cool for fast prototyping!), VS template files and SNIPPETS – using, creating, modifying :)
Also: Class Designer and its uses, Server Explorer window(Database-neutral – COOL! – I can even run and debug my stored procs there!)

Rumors:  Lambda expressions are coming in Orcas. Also, unit testing is moved to ‘Pro’ version, which is great – we don’t have to buy special license for ‘VS for Testers’ anymore.

Disappointments: C# has a lot less snippets than VB.NET. This sucks. Better check for more snippets online.

Tool: latest VisualStudio

Links: check ‘Deborah Kurata’ on the Web, lots of useful info.

Worth working with? Sure!

CodeCamp, Saturday, 11.15AM

CodeCamp, Saturday, 11.15AM

Symon Chang [info] [BEA] was presenting:
Using WS-SecurityPolicy for Web Services Security [description]

A guy with heavy accent who finished every sentence with the ‘all right’.

Introduced audience to WSS 1.0 and WSS 1.1 standards, showed some sample WS security policies (XML, WSS 1.1). Also, his favorite phrase was: “All this is very complicated”.

Actual quote: “They made things really complicated, you know… because of security…”

keywords: WSS, WS-Policy, WS security policy, signed endorsed encrypted supporting tokens

Tool: MS Indigo Security Policy Configuration Editor

Conclusion: Beginning… ok, intermediate workshop, masked as ‘advanced’. Anyway, I got introduced to the standards, which is always useful.

Worth working with? Only if I paid for doing this. My accent meets his accent and… BOOM! :)

CodeCamp, Saturday, 9.15AM

Juwal Lowy[idesign.net] was presenting:
Demonstrating WCF – beyond the endpoints.

Pretty impressive stuff they made at MS… Not ‘superior’, but certainly some of that is very clever :)

Juval actually presses the point that all this impressive stuff should be used not as high-level service endpoints, but expanded down to the application scaffolding, replacing all the ‘plumbing’ :)

When asked about possible performance problems, avoided answering it until I dropped the subject :)

keywords: WCF, service contracts, versioning, singleton across the galaxy, fault isolation per class level, build-in concurrency management, MQML, performance throttling through app.config
books: “Programming WCF Services” by Juval Lowy. O’Reilly 2007

links: http://www.idesign.net

Tool: .NET, WCF

Conclusion: Clever marketing, disguised as a programming workshop

Worth speaking to this person again? Definitely yes!