Do it, all the cool kids are doing it.

We thought you were Cool carl... we thought....


---
Regards,
Scott Barnes
http://www.riagenic.com


On Tue, Dec 6, 2011 at 10:29 AM, <[email protected]> wrote:

> I know I know.  One of these days I’ll set one up…maybe!****
>
> ** **
>
> *From:* [email protected] [mailto:[email protected]]
> *On Behalf Of *Shane Morris (Automatic Studio) <
> [email protected]>
> *Sent:* Monday, 5 December 2011 5:25 PM
> *To:* ozWPF <[email protected]>
> *Subject:* Re: Getting up to speed in wpf****
>
> ** **
>
> Carl you definitely should blog this.  ****
>
> ** **
>
> Shane
>
> Shane Morris  |  Automatic Studio  |  [email protected]  |  +61
> 438 818 888****
>
>
> On 05/12/2011, at 7:03 PM, "Stephen Price" <[email protected]>
> wrote:****
>
> +1 what he said. ****
>
> ** **
>
> (still rocking back and forth holding knees)****
>
> On Mo n, Dec 5, 2011 at 2:56 PM, <[email protected]> wrote:***
> *
>
> Hi All,****
>
>  ****
>
> I’m coming back after 3 weeks off with a new baby injury, and have read
> this whole thread with the usual dread.  I’ve been doing nothing but WPF
> XAML development now for 2.5 years and consider myself a proficient Devign
> Zombie as SB puts it (I thought I was the only one!).****
>
>  ****
>
> I’ll try to cover multiple emails in this post.****
>
>  ****
>
> ·         Don’t even consider using the VS designer.  When Blend came out
> I took the time to learn how it works (by numbing my developer brain with
> alcohol and letting my design instincts take over).  O nce you learn how to
> drive the Blend interface it’s actually a very sweet tool.  Yes it’s buggy
> as hell, which is why I only use it for standalone test /prototyping.
> Don’t bother pointing it at a real project because it’s almost guaranteed
> not to work.  Just start a new project, use it to work out your immediate
> UI design problem, and then copy the XAML to your real project.
>
> Even being proficient in Blend (+ Sketchflow), I find I spend about 50% of
> my time using the XAML editor (or VS pointed at the same test project) to
> do my coding.  It does a fantastic job of turning drag and drop into XAML,
> but I still take the time to clean it up by hand.
> It’s an awesome tool for learning about XAML control properties and styles
> too, and I did learn a lot back about each control from it back in the
> day.  I use it every whenever I’m designing a new window/control and it is
> why I remain productive.  I recommend takin g the time to learn using it.
>
> [Aside: the upcoming VS designer apparently uses the same code base as
> Blend (finally) so my opinion of the VS designer may change]
> ****
>
> ·         Learning XAML is bloody painful.  I think this is the reason
> why people who have learned the skills have burned it from their memory and
> don’t take the time to help out.  It’s painful to dredge up the memories of
> “how I solved this problem with that control in this situation” so I guess
> we tend to hold our knees to our chest and rock gently when we’re reminded
> of what we actually went through.
> Every control has quirks, and most of them have many.  Learning XAML is
> all about developing yo ur own approach to solving t he problems you come
> across while doing real work.  There are so many ways to solve each
> problem, but after a while you learn what works for you and develop
> technique.  But it takes many, many, -many- hours of work to get there.
> And there are so many problems that are similar that require different
> techniques to solve, but eventually you learn how to spot the most likely
> ways to resolve problems.****
>
> ·         Learn about the Panels first.  This is the way you carve up the
> surface to get your high level layout right.  Sketch the layout on paper,
> and then use your designer to roughly position everything.  Blend is
> awesome here because the design surface is actually running and (almost)
> always shows you exactly what things look like when you run them.****
>
> ·         When you’re running, use Snoop to tweak properties to get your
> layout right.  At the same time, load the XAML file in a different editor
> (notepad, another VS instance) so you can add the mods you’re making with
> Snoop into your code.  That way you run you reduce your run / stop / change
> code / run cycle a lot less.****
>
> ·         The biggest AHA moment I had with XAML was realising that when
> you add properties to converters you can do amazing things.  I use
> converters a hell of a lot to complement the data binding process, and they
> are an extremely powerful tool.****
>
> ·         Behaviours are another really important way to create nice
> code.  Attaching behaviours to elements is a very powerful concept, and you
> should learn to use it effectively (eventually).  I don’t wield them
> anywhere near as converters, but they are very important to have in your
> arsenal.****
>
> ·         I don’t use any aspect oriented programming to handle raising
> property changes.  I agree it’s a little old school needing to raise
> property changes, but I want to control when this happens myself, and make
> some effort to ensure I don’t raise property changes willy nilly.
> I -do- use VS snippets a hell of a lot to be productive at creating code.
> I also use AutoHotkey to dump out XAML quickly.  Don’t use resharper
> (*spit*); VS is bloated enough without adding a tool that replicates 80% of
> what it does in a different way.  And I don’t use VS addins that help write
> XAML.  Between snippets, AutoHotkey, and the awesome editing power of VS
> code editor (and sometimes a bit of Excel to generate large, repetitive
> chunks of XAML), you can spit out the code you need real quick (even though
> somet imes there is a lot)****
>
> ·   &nbs p;     Learn to use #region to organise your view models into
> appropriate pieces of code.  Collapsible code regions are an underrated way
> of removing clutter while you are writing code.****
>
> ·         The main project I’m on is a very large business application
> and thanks to WPF we can make some really slick stuff relatively simply.
> Most of the benefits come now that we have our established framewor k (View
> generation, messaging system, etc) in place and we can focus on just
> producing stuff.  The project is about 5/6 years old now and we’re using a
> customised version of CAB and it does the job.  I’d love to try some recent
> frameworks (Windsor/Caliburn/Prism/MEF) but at the moment I’m only able to
> work during business hours.  My point is, once you have the big pieces in
> place you won’t have to worry as much about them, leaving your problem
> solving capacity to dealing purely with XAML quirks and layout.****
>
> ·         Don’t think about designing uber-coo l looking new UI that will
> have everyone gagging with envy.  It was only after years of working at it
> that I’m now finally able to use what I’m learning to dream about UI like
> this and implement it.  Do the hard yards and learn how to think XAML
> first, then you will have the capacity and ability to build whatever you
> can design.****
>
> ·         The best way to be productive with XAML is to slow down.  Plan
> your changes; draw sketches, prototype, make comps using Photoshop, do
> -everything- you can to ensure what you want to build will work before y ou
> start coding.  Keep these plans available for when you want to change
> existing UI so you can ensure the changes will work.  Once you start coding
> you’ll be spending most of your time solving quirky problems and won’t have
> the ca pacity to update the design due to issues that arise; do what you
> can to ensure you know exactly what the UI will look like before you code*
> ***
>
>  ****
>
> I wish there was an easy path to learning XAML but I don’t think there
> is.  However the very from up here is awesome; I wish everyone could enjoy
> this as much as I do!****
>
>  ****
>
> Carl.****
>
>  ****
>
> Carl Scarlett****
>
> Senior .NET/WPF Developer, UX Designer | Genesis****
>
> *IT & Change Management |** Bankwest*****
>
> A: Level 5, 199 Hay Street | Perth | Western Australia | 6004****
>
> P: (08) 9449 8451****
>
> M: 0408 913 870****
>
> E: [email protected]****
>
>  ****
>
> <image001.png>****
>
>  ****
>
>  ****
>
> & nbsp;****
>
>  ****
>
> *From:* [email protected] [mailto:[email protected]]
> *On Behalf Of *Kirsten Greed <[email protected]>
> *Sent:* Wednesday, 23 November 2011 7:46 AM****
>
>
> < b>To: <[email protected]>
>
> *Subject:* Getting up to speed in wpf****
>
>  ****
>
> Hi All****
>
> I am new to WPF and missing the winforms way of doing things .****
>
> I am wondering about the best way to get up to speed****
>
> Do people usually set the data source and drag drop controls onto the
> designer – or use write XAML – or us e Expression Blend& nbsp; - or
> something else?****
>
> Pros and Cons?****
>
> Thanks****
>
> Kirsten****
>
>
> ______________________________________________________________________
> This email has been scanned by the Symantec Email Security.cloud service.
> For more information please visit http://www.symanteccloud.com
> ______________________________________________________________________****
>
> ________________________________ _______________
> ozwpf mailing list
> [email protected]
> http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf ****
>
> ________________________________________
> _______________________________________
>
> This email has been scanned by the Bankwest Email Security System.
> _______________________________________________________________________________
> ****
>
>
>
> _______________________________________________________________________________
> Unencrypted electronic mail is not secure and may not be authentic.
> If you have any doubts as to the contents please telephone to confirm.
>
> This electronic transmission including any attachments is intended only
> for those to whom it is addressed. It may contain copyri ght material or
>
> information that is confidential, privileged or exempt from disclosure by
> law.
> Any claim to privilege is not waived or lost by reason of mistaken
> transmission
> of this information. If you are not the intended recipient you must not
> distribute or copy this transmission and should please notify the sender.
> Your costs for doing this will be reimbursed by the sender.
>
> We do not accept liability in connection with computer virus, data
> corruption,
> delay, interruption, unauthorised access or unauthorised amendment.
>
> _______________________________________________________________________________
>
> ______________________________________________________________________
> This email has been scanned by the Symantec Email Security.cloud service.
> For more information please visit http://www.symanteccloud.com
> ___________________________________________________________________ ___***
> *
>
>
> _______________________________________________
> ozwpf mailing list
> [email protected]
> http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf****
>
> ** **
>
> _______________________________________________
> ozwpf mailing list
> [email protected]
> http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf****
>
>
> ______________________________________________________________________
> This email has been scanned by the Symantec Email Security.cloud service.
> For mo re information please visit http://www.symanteccloud.com
> ______________________________________________________________________****
>
> _______________________________________________
> ozwpf mailing list
> [email protected]
> http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf
>
> _______________________________________________________________________________
>
>
> This email has been scanned by the Bankwest Email Security System.
> _______________________________________________________________________________
> ****
>
>
> _______________________________________________________________________________
> Unencrypted electronic mail is not secure and may not be authentic.
> If you have any doubts as to the contents please telephone to confirm.
>
> This electronic transmission including any attachments is intended only
> for those to whom it is addressed. It may contain copyright material or
> information that is confidential, privileged or exempt from disclosure by
> law.
> Any claim to privilege is not waived or lost by reason of mistaken
> transmission
> of this information. If you are not the intended recipient you must not
> distribute or copy this transmission and should please notify the sender.
> Your costs for doing this will be reimbursed by the sender.
>
> We do not accept liability in connection with computer virus, data
> corruption,
> delay, interruption, unauthorised access or unauthorised amendment.
>
> _______________________________________________________________________________
> ______________________________________________________________________
> This email has been scanned by the Symantec Email Security.cloud service.
> For more information please visit http://www.symanteccloud.com
> ______________________________________________________________________
>
> _______________________________________________
> ozwpf mailing list
> [email protected]
> http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf
>
>
_______________________________________________
ozwpf mailing list
[email protected]
http://prdlxvm0001.codify.net/mailman/listinfo/ozwpf

Reply via email to