Rory Becker - DevExpress CodeRush Blog

July 2010 - Posts

  • Community Callout

    At DevExpress, we think we have some pretty good tools to help you be more productive, and we’re always working on ways to improve them even further, as well as working on posts and videos to help you see just how useful these tools are.

    What really rocks our world however, is when we hear direct from the community about how they use our tools, and which bits they find most useful.

    Nathan Fox (aka ThoughtfulCoder on Twitter) has recently found CodeRush so useful, that he felt the need to start blogging and recording video tutorials of his own, to show you how you can really make the most of CodeRush. Great stuff Nathan!

    Here you can see him talk about Text Selection, Scope Cycling and Our Test Runner.

    If there’s something you really like about CodeRush, or any of our other tools for that matter, we’d really like to hear about it.

  • The DXCore Visualize Toolbar

    You’ve just installed CodeRush, you’ve started Visual Studio and opened one of your solutions.

    You’ll quickly notice that CodeRush has decorated your code with a few graphical additions.

    image[7]

    First things first… Don’t panic. CodeRush is just showing you some of the ways it can enhance your coding experience.

    This is the DXCore Visualize Toolbar:

    image

    It sits, like other toolbars, at the top of your code editor, and it’s the simplest way to customise which extras are enabled at any given time.

    These additions are completely optional, but before you rush for the off switch, lets take a quick spin through them and find out what they’re for and why you might want to leave them on.

    Lets take a look at these one by one.

    Code IssuesIconCodeIssuesCodeIssuesVerticalBar
    CodeIssues is a feature that deserves an entire post of it’s own. However the quick summary, is that it’s a graphical interface which consists of a vertical bar beside the scrollbar containing indications of Errors, Warnings and Suggestions about the code at that relative position in the editor.

    When you hover over these indications, they expand to show you in greater detail, what the problem might be. Many of these Issues also link to Refactorings and CodeProviders which provide sensible ways of dealing with the problem at hand. Examples of these Issues include references to undeclared elements and empty catch blocks.

    CodeIssueUndeclaredElementCodeIssuesEmptyCatchBlock

    Spell check
    IconSpellCheckToggles the inline Spell Checker. When active, this feature is capable of checking comments, string, XML Comments, HTML and HTML attributes, indicating them inline with a familiar squiggly underline graphic.

    Member Icons
    IconMemberIconsProvides a graphical (at a glance) representation of the member’s Type MemberIconMenu(FieldMemberIconField / Method MemberIconMethod/ Property MemberIconProperty etc). The glyph also acts as the gateway to the ‘Member Icons’ context menu. This which will allow you to alter the visibility of the member, ‘Cut, Copy Comment and Select the member’ or Move the method to a nominated region.

    Flow Break Evaluation 
    IconFlowBreakEvaluationToggles the visibility of a couple of extra glyphs within the code editor.
    This glyph FlowBreakBreak appears next to keywords like break and return to indicate a change in program flow.
    This glyph imageappears next to thrown exceptions, and indicates a more radical departure from the normal program flow.
    If you hover your mouse over either of these, then a further graphic FlowBreakArrowwill appear, and animate to indicate where program flow will divert to, in the case of hitting this statement.

    Metrics
    IconMetricsToggles the presence of inline metrics. These glyphs imageappear on the left or right of members (as space permits) and serve 2 purposes. The first is their numeric imagevalue. It represents the result of a calculation called a metric. Depending on which metric is active, this value might represent the number of lines a member has, it’s Cyclomatic Complexity or some other metric (you can even create your own using the DXCore). The second function of this glyph is to provide an inline contextual menu, which let’s you change the active inline metric.

    Structural Highlighting
    IconStructuralHighlightingToggles the display of graphical lines which show connections between elements of the same statement. Graphically shows matching braces, blocks and illustrates how nested your code has become.

    image

    Region Painting 
    IconRegionPaintingPeople are split on whether regions are a good or bad thing, but we can all agree that the region directives themselves aren’t what you should be focusing on. When region directives are present, this feature paints over them with some subtle colouring, making them contrast less and fade into the background.

    Compare…
    RegionPaintingOff
    …with…
    RegionPaintingOn
    Isn’t that much better.

    Right Margin Line image
    IconRightMarginLineDraws a vertical line down the right hand side of your editor at a predetermined location. This line defaults to the 80th character but this can be configured from it’s options page (DevExpress \ OptionsEditor \ Painting \ Right Margin Line)

    Line Highlighter
    IconLineHighlighterHighlights the line imagethe caret is on, allowing it to stand out from the rest. This is particularly useful when working at larger resolutions and you need to be able to quickly find where you are working. A full line of colour is much easier to find that a single flashing caret. As you might expect, options are available (DevExpress \ OptionsEditor \ Painting \ Line Highlighter) to allow you to change both the colour and opacity of this highlight bar.

    XML Doc Comment
    IconXMLDocCommentThis repaints the XML Doc Comments so that they’re easier to read, removing all of those angle brackets and picking out the really useful information.

    This results in a conversion from this:XMLDocComment

    …to this…

    XMLDocCommentPretty

    All colours are fully customisable from the options (DevExpress \ OptionsEditor \ Painting \ XML Doc Comments)

    Step Into Member
    imageThe ‘Step into Member’ function (Ctrl+Shift+F11 by default) is not a graphical function. It’s purpose is, as it’s name suggests, to assist during debugging . It’s VS version companion (Step into…) will step into the next sequential function, in order to let  you step through that function and discover what happens. this function will advance the debugger into the member on which the caret is currently positioned.

    In the screenshot below, if we were to hit F11 (Step into) the debugger would naturally step into the ‘Add1’ function. however if we were to use ‘Step into Member’, CodeRush would determine that we wanted to step over both ‘Add1’ and ‘Add2’ and instead step into ‘CustomConcat’ because this is the location at which our caret is positioned.

    image

    …and so our little summary is at an end.

    Each of these features may provide it’s own additional options, typically found beneath the Editor\Painting folder in the options screen (accessible via the DevExpress\Options menu or the Ctrl+Shift+Alt+O shortcut). If you feel so inclined, the DXCore Visualize toolbar is always available to allow you to toggle any of them on on-the-fly.

    I hope this post has provided some additional understanding, as to the function of the graphical additions provided by CodeRush. My recommendation is that you leave them on, for at least a little while, in order to familiarise yourself with how useful each can be, then you’ll be well equipped to make a decision about which suit your particular needs.

  • What can I do to help you?

    Ok… I’ve a shiny new blog, and I’ve got this ‘CodeRush Community Evangelist’ gig to go with it.

    Excellent… What next?

    Well I see a big part of my job being, helping people to get the most out of their IDE...and by ‘people’ I mean you.

    While I could sit here and preach at you, it only seems reasonable that I ask you dear reader, what would you like to see me write about here?

    It’s only sensible that we keep things DevExpress related, and it’s probably best to stick to the IDE Tools side of our offerings. My knowledge does extend further, but only fleetingly.

    So what do you want to know more about?

    We could talk about CodeRush, Refactor Pro!, CodeRush Xpress or DXCore.

    We could go deep on Features, Options, Concepts or APIs.

    Is there a feature you’ve heard about, but aren’t quite sure how to access / use ? would you prefer a different set of shortcuts, and would like some help configuring things?

    We could cover Shortcuts, Templates, Refactorings, CodeProviders, Selection Embeddings, Selection Inversion, CodeIssues or a whole host of other things.

    Perhaps you’d like to see how to customise and extend these features?

    Perhaps you’d like to see how to write a CodeRush plugin and create some CodeIssues, TextCommands or StringProviders of your very own?

    So add a comment dear reader, and tell me what you’d like to see on this blog.

  • Congratulations! We have a winner

    If you remember last Friday I posted a little quiz with the aim of doling out a few passes to the FEST10 event run by NxtGenUg.

    I’ll spare people’s feelings (this time) and not publish the specifics of some of the more dubious answers.

    So without further ado… Congratulations Dom Sinclair. With 13 out of 15 correct answers, you are our top winner. We’ll be in touch ASAP to arrange your new CodeRush license.

    I’ll list the answer below in a moment, but it’s worth noting that some of the questions caused some pause. It could even be suggested that some of the answers could be debatable. Where applicable we felt it was better to be generous.

    …and now the answers:

    ---
    Geography:

    1. Name 3 of the 7 Uk NxtGenUg regions.
      • Possible answers included: Birmingham, Cambridge, Coventry, Hereford, Manchester, Oxford and my own personal favourite Southampton
    2. Where is the Geek Dinner for Fest10 happening?
      • Causing some confusion, this question’s correct answer was Harry Ramsden’s in Bournemouth. Some thought the location might be Russell Court Hotel, however this is the location of the ’After Fest Party’ rather than the Geek Dinner.
    3. Where was Fest09 held?
      • Microsoft Research in Cambridge

    History:

    1. CodeRush is older than .Net. Which IDE was CodeRush first available for?
      • Delphi
    2. What company did Mark Miller own and run before it got bought by DevExpress?
      • Eagle Software
    3. Dustin Campbell's used to work for DevExpress working on the DXCore. What is his current job title?
      • Several variations on a theme here, but we can learn from this page that Dustin has moved on from DevExpress and now works for Microsoft as ‘A Program manager in the Visual Studio Managed Languages’. Anything that suggested this was considered good.

    Mathematics (Well numbers anyway ... Sort of):

    1. How many UK NxtGenUg meetings can you attend for free before you should really pay for a membership?
      • 2 meetings (No, this question was not supposed to become a challenge.) NxtGenUg want to really encourage you to come on down and see what things are really about. So you can attend 2 meetings without ever spending a penny, and you’ll even be included in the swag draw at the end.
    2. How much does it normally cost to purchase CodeRush?
      • $249 (and yes this includes a copy of Refactor Pro! – Absolute bargain… Go get a copy now!.)
    3. Name the 3 phases/parts of every NxtGenUg Meeting?
      • Another slightly tricky one. It was rightly pointed out that there are many parts to a NxtGenUg meeting. So eventually I decided to accept variations on the following: Nugget, Talk, Pizza, Swag or Pub Networking. Well these are the critical pieces at the meetings I attend.

    (Tech) Celebrity

    1. Which FEST10 speaker is giving 2 talks on the day itself?
      • Glenn Block will be speaking on both MEF and REST
    2. Name one founder of UK NxtGenUg.
    3. Mark Miller has appeared in a podcast or 2 in his time. Provide a link to any such podcast.
      • Answers here were varied, but the most popular answer was DotNetRocks

    DevExpress

    1. DevExpress sells a number of subscriptions including   __________ Universal,  __________ Enterprise and __________Professional. What phrase is missing from the titles of these subscriptions?
      • DXperience
    2. What is the full name of DevExpress' "Object-Relational Mapper Tool"
      • eXpress Persistent Objects
    3. Which versions of Visual Studio is CodeRush available for?
      • This is one of those answers where no-one got all the versions for which CodeRush is available, even though the answer is quite simply all of them. Granted we can only really include versions of studio since the inception of .Net. Therefore the full correct answer is VS2002, VS2003, VS2005, VS2008 and of course VS2010.

    Thanks to every one for taking part. I hope to see some of you at FEST itself on Friday.

  • Oh.... 'I do like to be beside the C# Side' - Win tickets to FEST10

    That's right we're only a week away from FEST10.

    FEST, for those who don't already know, is an annual UK event, which sees the 7 regional Next Generation User Groups (NxtGenUg) gather together for a full day of awesome talks by some really outstanding presenters.

    This day long event is being held this year in sunny Bournemouth, on the pier. I am personally guaranteeing the weather this year. If it's not to your satisfaction in any way, I'll treat each and every attendee to a free trial of CodeRush. :)

    The agenda looks great, with awesome speakers such as Jon Skeet and Glenn Block and there's even going to be an 'After FEST Party'

    Full details of everything FEST10 related are here

    FEST normally costs around £60 to attend (with NxtGenUg members getting in for free). However this year, NxtGenUg co-founder Richard Costall has seen fit to donate 10 tickets to DevExpress to distribute in a contest.

    Now I'll admit we're cutting this one a bit fine, with only 1 week to go (FEST is being held Friday 16th July from 09:00 til 18:00) but we're going to give this our best shot.

    So we have a *simple* (lol) trivia quiz (15 questions) for you:

    Answer as many questions as you can in a single comment on this blogpost, and we'll pick the winners based on most correct answers, and tie break based on how quick your comment arrives.

    The winner will get 2 tickets to FEST10 and a copy of CodeRush. 8 Runners up will receive individual tickets to FEST10

    -------------------------------------------------------------

    Geography:

    1. Name 3 of the 7 Uk NxtGenUg regions.
    2. Where is the Geek Dinner for Fest10 happening?
    3. Where was Fest09 held?

     

    History:

    1. CodeRush is older than .Net. Which IDE was CodeRush first available for?
    2. What company did Mark Miller own and run before it got bought by DevExpress?
    3. Dustin Campbell's used to work for DevExpress working on the DXCore. What is his current job title?

    Mathematics (Well numbers anyway ... Sort of):

    1. How many UK NxtGenUg meetings can you attend for free before you should really pay for a membership?
    2. How much does it normally cost to purchase CodeRush?
    3. Name the 3 phases/parts of every NxtGenUg Meeting?

    (Tech) Celebrity

    1.  Which FEST10 speaker is giving 2 talks on the day itself?
    2.  Name one founder of UK NxtGenUg.
    3.  Mark Miller has appeared in a podcast or 2 in his time. Provide a link to any such podcast.

    DevExpress

    1. DevExpress sells a number of subscriptions including   __________ Universal,  __________ Enterprise and __________Professional. What phrase is missing from the titles of these subscriptions?
    2. What is the full name of DevExpress' "Object-Relational Mapper Tool"
    3. Which versions of Visual Studio is CodeRush available for?

     

    -------------------------------------------------------------

    So there you go... 15 questions. The first person to get all of them right and post them as a comment below gets a copy of CodeRush and 2 tickets to FEST10 [Note: I'll be holding back comments on this post, so as not to give the game away to successive entrants. ;)]

    If you look carefully, you may even be able to find some of the answers in this blogpost

    In any case I hope to see you at FEST10. It should be a great day!

  • Welcome!

    Check it out, I've got a new blog...
    Oh but that's right, you don't even know me... Let's start again.

    So... Introductions..

    My name is Rory Becker. I'm a .Net developer based out of Poole in the Uk.

    For the last few years I've been a member of 'DX-Squad' - "A volunteer group of advanced users supporting DevExpress' tools/component technologies and development community".This means I spent a bunch of time hanging out in the IDE Tools Forums and on Twitter, trying to help people make the most of DevExpress' IDE Tools. (CodeRush, CodeRush Xpress, RefactorPro and the DXCore). I also founded the 'CodeRush and DXCore Community Plugins' site on which you will find a bunch of 3rd party, completely open source plugins for CodeRush (Pro and Xpress). I was even involved in writing some of them.

    Just recently, my luck took a serious turn for the better, when I had the amazing good fortune to get hired by DevExpress as a 'CodeRush Community Evangelist'. Now that does sound impressive doesn't it.

    Some of you might already be familiar with my personal blog, but now I have this nice shiny new space to play in, my posts are going to look so much more professional. Well that's the plan at least.

    So 'What can we expect from this new blog?', I hear you say.

    'Good question', says I.

    Honestly I'm not entirely sure, but I think it's a fairly safe bet that we'll see some CodeRush, some Refactoring and no doubt some DXCore plugins from time to time.

    I want to help you get the most out of our IDE products. I'm going do Videos, Tutorials, Hints and Tips....Did I mention plugins? :).

    I'll still be hanging out in the forums and on Twitter, happy to answer questions when I can, and pass them on to the real experts when needed. You can even reach me via my ever-so-shiny-and-new email address (roryb@devexpress.com)

    As I said, this is all very new, and I'm not entirely certain what this will evolve into, but do I hope you'll join me in finding out :)

    Let's explore the world of CodeRush together, and become more productive in the process.

LIVE CHAT

Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at info@devexpress.com or call us at +1 (818) 844-3383

FOLLOW US

DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, along with high-performance HTML JS Mobile Frameworks for developers targeting iOS, Android and Windows Phone. Whether using WPF, ASP.NET, WinForms, HTML5 or Windows 10, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2017 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners