Thursday, November 29, 2007

Free official copies of Camtasia studio and SnagIt

Want Camtasia Studio (the best software to make screencasts - remember about Justin's competition?) and SnagIt for free? No problem, just go and download it from official Techsmith website. What's the catch? No catch! This is old versions, provided for free by the company.

Download Camtasia 3 (current version 5) here and get free license key here.
Download SnagIt 7.2.5 (current version 8.2) here.

Have a nice weekend.

via Windows Connect

Wednesday, November 28, 2007

WPF quiz #1: Moving rectangles

Referring last event, I want to start new section in my blog, named "WPF quiz".  In this section, I'd like to ask you WPF related question and a day later answer the question my self. So, let's start

Question:
I have to display large amount of rectangles, which moving randomly at the screen. What approach, should I use in order to gain best performance for my application?

Answers (creation):

  1. Create DependencyObject with relevant properties. Create ObservableCollection of those objects. Create DataTemplate to visualize the object into Rect. Bind ObservableCollection to Children property of Canvas.
  2. Create UIElement, that draws Rect. Create ObservableCollection of those UIElements. Bind ObservableCollection to Children property of Canvas.
  3. Create FrameworkElement hosts Rect. Create ObservableCollection of those FrameworkElements. Bind ObservableCollection to Children property of Canvas.
  4. Create CustomControl, that visualizes Rect. Create ObservableCollection of those FrameworkElements. Bind ObservableCollection to Children property of Canvas.

Answers (movement):

  1. Bind attached properties Canvas.Left, Canvas.Top to X and Y of the objects
  2. Bind RenderTransform -> TranslateTransform property of the objects to X and Y
  3. Create and remove appropriate objects with preset X and Y in ObservableCollection
  4. Create DispatcherTimer to change X and Y properties of the objects.

You should choose one from Answers(creation) section and one from Answers(movement) section to archive full answer to this question.

Please use comments for this post to answer.

My answer will come tomorrow. Good luck.

DEV411 - presentation and demos download

I uploaded my presentation, done in DevAcademy2 to SkyDrive. Now you can download, use and review it.

PPT only presentation (7.2 MB)

PPT only presentation before final cleanup (7.6 MB)

Full presentation, including demos, code and PPTX file (26.1 MB)

Have a nice day.

Thank you and Microsoft Expression Blend SP1

First of all, I want to say thanks for all those, who took part in DevAcademy2 event yesterday. I believe, that such events can bring a lot to developer's community all over the world.

Next, I want to announce great work of Microsoft Expression team, that brings us SP1 for Microsoft Expression Blend product.

What fixed in SP1? Most of issues, you reported here.

Download Microsoft Expression Blend SP1 >>

Monday, November 26, 2007

Dev Academy II - updated matrix

Today, I got about 10 phone calls about what's happen with time matrix for Dev Academy II time slots matrix. Please note, that the matrix you got is updated. Please, download and print updated one from here (my slot is at 9:30 AM).

 

Download Dev Academy II Matrix >>

DEV411 - WPF for developers: optimizing your WPF application

Less, then 24 hours until Developer Academy 2 a lot of pressure and stress. Last fixes to my presentation - it's too long now. A lot of stuff, I want to speak about, a lot of demos (mostly very bad performing applications, I dealing with), three computers (one is really cool with 8.9 Vista score) and, of cause, a lot of code to write. But I have only 75 minutes to do it all. So, I have to think a lot about how to do it all together with such tight timeframe (do you remember? - 9:30)

What I'll speak about? I'll speak about cool luxury cars, really.

  • First of all, the most common problem, WPF developers faced with, is performance. No, WPF scale it, but you should know how to do it smart way.
  • Next, practices. Yes, there are practices and it's worth to learn wisdom by the follies of others. So, I'll speak about those follies.
  • Why sometimes, pixel is matter, and sometimes it is not?
  • What two threads, you are working with? Are there really two? Where the application problems is lying?
  • What is tier? How to measure it? How to know when I'm working with GPU and when with CPU? How to influence it?
  • How much memory (either computer and graphic card) I need?
  • What's the greatest evil of your WPF application?
  • How to scale very large bitmaps or very large amount of controls?
  • How to easily make data virtualization by your own hands?
  • How to create your own UI threads? Yes - you can do it!
  • How to make your ListBox x70 times smaller and faster, your data x20 smaller and x700 faster
  • How manage layout and measurement engines
  • How to do things in background without paying application fees
  • How to manage dispatchers
  • How to use visual and data performance measurement tools and how to analyze and profile unmanaged resources
  • How to make your application starts x400 faster and load resources on demand
  • How to load XAML without loading System.Xml.dll and using DOM or SAX
  • How to run the same WPF application on P3 with 128MB RAM and internal graphic card and Core Duo 2 with 4GB RAM and GeForce 880 GTX and get the same behavior of fast running application
  • ...and much much more...

Waiting for you tomorrow at 9:30 AM (this is almost night, kind of morning) at Arbel hall of Avenue at Airport City near Ben Gurion airport. Come an hour before.

image

Thursday, November 22, 2007

Time slot of my session in Developer Academy 2 has been changed

Due to external factors, the time slot of my session in Developer Academy 2 has been changed and now it from 9:30 to 10:45 in Arbel hall in floor 0 (entrance at left). I'm really apologies for this inconvenience and waiting for all of you to come. We're open at 8:30 and there is registration and might be sandwiches in the hall. Come first and park near entrance :)

Please notice: that there are morning traffic jams at the entrance to Airport City as well as registration hassle, thus all those, even come via road 6, take half an hour to 40 minutes spare to enter the parking lot and register.

I'm sorry, that you have to wake up so early, but remember: "Early to bad and early to rise makes a man healthy ,wealthy, wise and not late to DEV411 about WPF lessons learned from last year" :)

27-Nov @ 9:30 AM
set your clock to wake up at 6:30AM and I'll bring you a coffee¹

¹ Limited to first 250 visitors only