Search Results

Search found 4879 results on 196 pages for 'geeks'.

Page 162/196 | < Previous Page | 158 159 160 161 162 163 164 165 166 167 168 169  | Next Page >

  • Code Clone Analysis on Rawr &ndash; Part 1

    - by Dylan Smith
    In this post we’ll take a look at the first result from the Code Clone Analysis, and do some refactoring to eliminate the duplication.  The first result indicated that it found an exact match repeated 14 times across the solution, with 18 lines of duplicated code in each of the 14 blocks.   Net Lines Of Code Deleted: 179     In this case the code in question was a bunch of classes representing the various Bosses.  Every Boss class has a constructor that initializes a whole bunch of properties of that boss, however, for most bosses a lot of these are simply set to 0’s.     Every Boss class inherits from the class MultiDiffBoss, so I simply moved all the initialization of the various properties to the base class constructor, and left it up to the Boss subclasses to only set those that are different than the default values. In this case there are actually 22 Boss subclasses, however, due to some inconsistencies in the code structure Code Clone only identified 14 of them as identical blocks.  Since I was in there refactoring the 14 identified already, it was pretty straightforward to identify the other 8 subclasses that had the same duplicated behavior and refactor those also.   Note: Code Clone Analysis is pretty slow right now.  It takes approx 1 min to build this solution, but it takes 9 mins to run Code Clone Analysis.  Personally, if the results are high quality I’m OK with it taking a long time to run since I don’t expect it’s something I would be running all that often.  However, it would be nice to be able to run it as part of a nightly build, but at this time I don’t believe it’s possible to run outside of Visual Studio due to a dependency on the meta-data available in the VS environment.

    Read the article

  • Windows 8 and "Formerly known as Metro" apps, an experience with PDF app

    - by Kevin Shyr
    I'm slowing and surely getting used to Windows 8.  It is no doubt a slow process since I still run daily on an XP machine, a Vista machine, and 3 windows 7 box. A new quirk I found regarding Windows 8.  I never thought it was important to learn how to close a "formerly known as Metro" app (what do we call those these days?).  Then I attached a portable drive to my laptop and opened up a PDF file, and I couldn't safely remove the hard drive afterwards because I did not know how to close the PDF reader app. I have since learned that if you want to close an app, you can try Alt + F4 mouse over the top left corner and swipe down, right-click to close you app Windows Key + TAB, right-click to close the app All these make me wonder, how do you do this in a phone or tablet?

    Read the article

  • To Virtual or Not to Virtual

    - by Kevin Shyr
    I recently made a comment "I hate everything virtual" while responding to a SQL server performance question.  I then promptly fired up my Hyper-V development environment to do my proof of concept stuff, and realized that I made the cardinal sin of making a generalized comment about something, instead of saying "It depends". The bottom line is if the virtual environment gives the throughput that the server needs, then it is not that big of a deal.  I just have seen so many environment set up with SQL server sitting in virtual environment sitting in a SAN, so on top of having to plan for loss data, I now have to plan for my virtual environment failing for so many different reasons, thought SQL 2012 High Availability Group should make that easier.  To me, a virtual environment makes sense for a stateless application with big scalibility requirement, but doesn't give much benefit to an application where performance and data integrity are both important.  If security is not a concern, I would just build servers with multiple instances on them to balance the workload. Maybe this is also too generalized a comment, and I'll confess that I'm not a DBA by trade.  I'd love to hear the pros and cons of virtualizing a SQL server, or other examples where virtualization makes total sense (not just money, but recovery, rollback, etc.)

    Read the article

  • Creating a Yes/No MessageBox in a NuGet install/uninstall script

    - by ParadigmShift
    Sometimes getting a little feedback during the install/uninstall process of a NuGet package could be really useful. Instead of accounting for all possible ways to install your NuGet package for every user, you can simplify the installation by clarifying with the user what they want. This example shows how to generate a windows yes/no message box to get input from the user in the PowerShell install or uninstall script. We’ll use the prompt on the uninstall to confirm if the user wants to delete a custom setting that the initial install placed in their configuration.  Obviously you could use the prompt in any way you want. The objects of the message box are generated similar to the controls in the code behind of a WinForm. At the beginning of your script enter this: param($installPath, $toolsPath, $package, $project)   # Set up path variables $solutionDir = Get-SolutionDir $projectName = (Get-Project).ProjectName $projectPath = Join-Path $solutionDir $projectName   ################################################################################################ # WinForm generation for prompt ################################################################################################ function Ask-Delete-Custom-Settings { [void][reflection.assembly]::loadwithpartialname("System.Windows.Forms") [Void][reflection.assembly]::loadwithpartialname("System.Drawing")   $title = "Package Uninstall" $message = "Delete the customized settings?" #Create form and controls $form1 = New-Object System.Windows.Forms.Form $label1 = New-Object System.Windows.Forms.Label $btnYes = New-Object System.Windows.Forms.Button $btnNo = New-Object System.Windows.Forms.Button   #Set properties of controls and form ############ # label1 # ############ $label1.Location = New-Object System.Drawing.Point(12,9) $label1.Name = "label1" $label1.Size = New-Object System.Drawing.Size(254,17) $label1.TabIndex = 0 $label1.Text = $message   ############# # btnYes # ############# $btnYes.Location = New-Object System.Drawing.Point(156,45) $btnYes.Name = "btnYes" $btnYes.Size = New-Object System.Drawing.Size(48,25) $btnYes.TabIndex = 1 $btnYes.Text = "Yes"   ########### # btnNo # ########### $btnNo.Location = New-Object System.Drawing.Point(210,45) $btnNo.Name = "btnNo" $btnNo.Size = New-Object System.Drawing.Size(48,25) $btnNo.TabIndex = 2 $btnNo.Text = "No"   ########### # form1 # ########### $form1.ClientSize = New-Object System.Drawing.Size(281,86) $form1.Controls.Add($label1) $form1.Controls.Add($btnYes) $form1.Controls.Add($btnNo) $form1.Name = "Form1" $form1.Text = $title #Event Handler $btnYes.add_Click({btnYes_Click}) $btnNo.add_Click({btnNo_Click}) return $form1.ShowDialog() } function btnYes_Click { #6 = Yes $form1.DialogResult = 6 } function btnNo_Click { #7 = No $form1.DialogResult = 7 } ################################################################################################ This has also wired up the click events to the form.  This is all it takes to create the message box. Now we have to actually use the message box and get the user’s response or this is all pointless.  We’ll then delete the section of the application/web configuration called <Custom.Settings> [xml] $configXmlContent = Get-Content $configFile   Write-Host "Please respond to the question in the Dialog Box." $dialogResult = Ask-Delete-Custom-Settings #6 = Yes #7 = No Write-Host "dialogResult = $dialogResult" if ($dialogResult.ToString() -eq "Yes") { Write-Host "Deleting customized settings" $customSettingsNode = $configXmlContent.configuration.Item("Custom.Settings") $configXmlContent.configuration.RemoveChild($customSettingsNode) $configXmlContent.Save($configFile) } if ($dialogResult.ToString() -eq "No") { Write-Host "Do not delete customized settings" } The part where I check if ($dialog.Result.ToString() –eq “Yes”) could just as easily check the value for either 6 or 7 (Yes or No).  I just personally decided I liked this way better.   Shahzad Qureshi is a Software Engineer and Consultant in Salt Lake City, Utah, USA His certifications include: Microsoft Certified System Engineer 3CX Certified Partner Global Information Assurance Certification – Secure Software Programmer – .NET He is the owner of Utah VoIP Store at http://www.utahvoipstore.com/ and SWS Development at http://www.swsdev.com/ and publishes windows apps under the name Blue Voice.

    Read the article

  • BizTalk 2009 - Messages: Last 50 suspended

    - by StuartBrierley
    Having previously talked about the lack of the traditional HAT in BizTalk 2009, the question then becomes how do you replicate some of the functionality that was previsouly relied on? I have already covered the Last 100 Messages Received  and the Last 100 Messages Sent queries so what about suspended messages? In BizTalk 2004 we had a query in HAT to return the last 100 suspended message instances.  Lets create a direct replacement in a BizTalk 2009 Hatless environment. Basically we are creating a query to search for the last fifty messages that were suspended by BizTalk: Coming up Service instances - Last 100

    Read the article

  • SilverlightShow for June 20 - 26, 2011

    - by Dave Campbell
    Check out the Top Five most popular news at SilverlightShow for SilverlightShow Top 5 News for June 20 - 26, 2011. Here are the top 5 news on SilverlightShow for last week: Metro UI for RadControls for Silverlight and WPF Nokia's first Windows Phone: images and video, codenamed 'Sea Ray' List of standard icons for Windows Phone 7 (WP7) Is Adobe’s new HTML5 Edge tool Expression Blends replacement? The Ultimate Windows Phone 7.5 Mango Preview Visit and bookmark SilverlightShow. Stay in the 'Light

    Read the article

  • AdventueWorks Design Patterns Project - Part 1

    - by RonGarlit
    This is the presentation I did tonight at PHILLYNJ.NET.  It is the first in a multi-part of a series on the Applied Design Patterns.   The solution files are working code with design pattern notes in the comment blocks. After the overview and higher level discussions on Enterprise Design Patterns I reviewed the low level Database Access Library of code.  With walk-throughs of the the code and unint test. After that we went through the ProductPhotoConsoleTest Application that performed intergration testing of the DBAccess Class with the AdventureWorks ProductPhoto table extracting the photos and writing them to a file folder. The Demo code and PowerPoint can be obained from this link.  https://skydrive.live.com/?wa=wsignin1.0&cid=29e34e9a8650bb9e#!/?cid=29e34e9a8650bb9e&sc=documents&id=29E34E9A8650BB9E%21151 Please note that I use Visual Studio 2010 Ultimate.  If you have a lesser version the Modeling projects likely will not work or have limited functionality and you should unload that project to prevent warning. Enjoy! --Ron

    Read the article

  • Service pack 1 on the way for Windows 7 and Windows Server 2008 R2

    - by John Breakwell
    On the MSMQ front, only two hotfixes are listed: 2028997 - FIX: Message Queuing may become unresponsive in Windows 7 or in Windows Server 2008 R2 974813 - FIX: You cannot send or receive messages by using Message Queuing 4.0 or Message Queuing 5.0 after you configure the BindInterfaceIP registry entry. from a total of 625 documented for the service pack. There may, of course, be undocumented changes where an update was not previously released separately and so has no associated KB article published. According to the Core Team, Volume Licensed, MSDN and TechNet subscribers get access February 16th, 2011. All customers get access February 22nd, 2011, through Windows Update and direct download So get ready to start testing.

    Read the article

  • How to ask questions on the Forums

    - by TATWORTH
    Based upon answering many questions on forums such as forums.asp.net, here are some tips on getting your questions answered, once you have exhausted searching on your own. Choose a concise but meaningful title but avoid words like "urgent" Post to the correct section of the forum - some people specialise in a particular section of a given forum Make it clear that you have already made an effort to answer yourself. Summerise the environmental context of your question e.g. If using SQL then state the version e.g. SQLExpress 2008 If you need to post a code or markup sample, tidy it up by removing extraneous blank lines and set the tab spacing to 2 rather than 4. Take your time composing the question so that it is set out as clearly as possible. Remember that the majority of people providing answers do so in their own time. Be very polite and thank those that help you.

    Read the article

  • From the Coal Face - StyleCop 4.4.0

    - by TATWORTH
    Style Cop 4.4.0 is now out. This is a free download from http://stylecop.codeplex.com/ (please note the new location). This version is for VS2010. If you are usign an older version of Visual Studio you be prepared to keep to an older release like 4.3.0. The more I use StyleCop the more I like it. Code that is style cop compliant is much easier to pick up. It helps if you have GhostDoc (free) and Resharper (from jetBrains.Com)

    Read the article

  • Run Grunt task in Visual Studio Release Build with a bat file

    - by Aligned
    Originally posted on: http://geekswithblogs.net/Aligned/archive/2014/08/19/run-grunt-task-in-visual-studio-release-build-with-a.aspx 1. Add a BeforeBuild in your csproj file. Edit the xml with a text editor. <Target Name="BeforeBuild"> <Exec Condition="'$(Configuration)' == 'Release'" Command="script-optimize.bat" /> </Target> 2. Create the script-optimize.batREM "%~dp0" maps to the directory where this file exists cd %~dp0\..\YourProjectFolder call npm uninstall grunt call npm uninstall grunt call npm install --cache-min 604800 -g grunt-cli call npm install --cache-min 604800 grunt typescript requirejs copy less:compile less:mincompileThis grunt command will compile typescript, run the requireJs optimizer, complie and minimize less.3. Make it use the minified code when the Web.config compilation debug is set to false <!-- These CustomCollectFiles actions are used so that the Scripts-Release folder/files are included        when publishing even though they are not project references -->  <Target Name="CustomCollectFiles">    <ItemGroup>      <_CustomFiles Include="Scripts-Release\**\*" />  </ItemGroup>  </Target> That should be all you need to get a Grunt task to minify and combine JS (plus other tasks) in Visual Studio Release build with debug = false. This is a great video of Steve Sanderson talking about SPAs, npm, Knockout, Grunt, Gulp, ect. I highly recommend it.

    Read the article

  • Do your own design jobs and make it look professional

    - by Webgui
    Looks and design is becoming more and more important for customers and organizations event when we deal with internal enterprise applications. However,  many web developers who work on business apps end up not investing resources on the design. The reason may be that they ran out of time so with their client's pressure there was no choice but to skip past the design process. In some cases, especially in sall software houses, there are no trained professional designers and the developers have to do both jobs. Since designing web applications can be very complex and requires mastering several languages and concepts, unless a big budget was allocated to the project it is very hard to produce a professional custom design. For that exact reasons, Visual WebGui integrated Point & Click Design Tools within its Web/Cloud Development Platform. Those tools allow developers to customize the UI look of the applications they build in a visual way that is fairly simple and doesn't require coding or mastering HTML, CSS and JavaScript in order to design. The development tools also allow professional designers easier work interface with the developers and quicly create new skins. So if you are interested in getting your design job done much easier, you should probably tune in for about an hour and find out how. Click here to register: https://www1.gotomeeting.com/register/740450625

    Read the article

  • My First 5K

    - by Chris Williams
    So… yesterday I registered for my first 5K event. It’s in Eden Prairie this weekend. It’s a pretty major milestone for me, especially since I absolutely hate running with a passion. Still, I have to admit I’m rather excited about it. Given that this is my first event, I have no illusions about winning. My immediate goal is simple… don’t come in last. I’ll let you know how it goes.

    Read the article

  • Comments in code

    - by DavidMadden
    It is a good practice to leave comments in your code.  Knowing what the hell you were thinking or later intending can be salvation for yourself or the poor soul coming behind you.  Comments can leave clues to why you chose one approach over the other.  Perhaps staged re-engineering dictated that coding practices vary.One thing that should not be left in code as comments is old code.  There are many free tools that left you version your code.  Subversion is a great tool when used with TortoiseSVN.  Leaving commented code scattered all over will cause you to second guess yourself, all distraction to the real code, and is just bad practice.If you have a versioning solution, take time to go back through your code and clean things up.  You may find that you can remove lines and leave real comments that are far more knowledgeable than having to remember why you commented out the old code in the first place.

    Read the article

  • Recursion in F#

    - by MarkPearl
    Things are slowly coming together – I was able to look at a bit of F# code and intuitively know what it was going to do (yay)… So today I saw a blog post by Bob Palmer on Fibonacci numbers in F# which inspired me to look at bit into recursion. First the C# example… class Program { public static void CountDown(int n) { switch (n) { case 0: Console.WriteLine("End of Count"); break; default: Console.WriteLine(n); CountDown(n-1); break; } } static void Main(string[] args) { CountDown(10); Console.ReadLine(); } }   In F#, the equivalent would look something like this… open System let rec CountDown n = match n with | 0 -> Console.WriteLine("End of Count"); | n -> Console.WriteLine(n); CountDown (n-1); CountDown 10 Console.ReadLine()   Pretty simple stuff. With F# you when making recursive calls you need to explicitly declare that the function is recursive with the “rec” keyword. Otherwise the code is pretty easy to read and self explanatory.

    Read the article

  • Winnipeg IE9/WP7 Boot Camp April 5th!

    - by D'Arcy Lussier
    Microsoft, along with local Winnipeg-based company Online Business Systems, are bringing you the IE9/WP7 Boot Camp event on April 5th! This is a *FREE* full day event with four sessions (2 on WP7, 2 on IE9) and will provide you with a great understanding of the technologies and how to leverage them! I’ll be presenting the WP7 sessions, and Lyle Bryant will be presenting the IE9 sessions. We’re holding this event at the Imax theatre, and will be providing breakfast and lunch! We’ll also have great prizes to give away. For more information and to register, visit the event registration page here: https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032480372&Culture=en-CA D

    Read the article

  • Testing what is happening inside your BizTalk solution

    - by Michael Stephenson
    As BizTalk developers we all know that one of the common challenges is how to test your BizTalk solution once it is deployed to BizTalk. Hopefully most of us are using the BizUnit framework for testing, but we still have the limitation that it's a very Black Box test. I have put together a sample and video to show a technique where I'm using the Logging Framework from the BizTalk CAT Team at Microsoft and where by BizUnit test is able to make assertions against the instrumentation going through the framework. This means that I can test for things happening such as the fact a component was executed or which branch of an orchestration was executed by simply using my normal instrumented code. I've put the sample and video for this on the following codeplex site: http://btsloggingeventsinbi.codeplex.com/ The video should also be on cloud casts fairly soon too.

    Read the article

  • Build & Deployment Guide for Service Bus Relay Project

    - by Michael Stephenson
    Ive recently published a sample guide based on a real-world project where we implemented an on-premise WCF routing solution to connect SAAS applications to our on premise line of business applications. The guide will discuss: How we configured and setup the infrastructure How we setup the on-premise server to listen to the service bus What software we used How we configured Windows Azure This contains some useful contextual information around the reference scenario and hopefull this will be very useful to others undertaking similar projects. Ive also included this on the technet wiki page for Windows Azure Service Bus resources: http://social.technet.microsoft.com/wiki/contents/articles/13825.windows-azure-service-bus-resources.aspx

    Read the article

  • A Change of Seasons...

    - by James Michael Hare
    As some of you already know, today is my last day at Scottrade. It has been a great place to work and I'll miss all the relationships I've formed over the last 5 years immensely! Starting Monday, I will be taking a new position at Amazon.com in Seattle. It should be an exciting new adventure and I look forward to sharing more about my experiences in the days to come! I do intend to continue blogging (after the move settles down) about C# as I'm able, and may mix in some Java as well as I rekindle (Amazon? Kindle? Get it? Okay, that was lame, I know...) my knowledge of the language for my new job responsibilities. I'll miss all the relationships I've developed with the .NET community in St. Louis and the surrounding area, and hope to come back sometime to participate in future Days of .NET conferences, if able! Stay tuned for more updates!

    Read the article

  • Using ConcurrentQueue for thread-safe Performance Bookkeeping.

    - by Strenium
    Just a small tidbit that's sprung up today. I had to book-keep and emit diagnostics for the average thread performance in a highly-threaded code over a period of last X number of calls and no more. Need of the day: a thread-safe, self-managing stats container. Since .NET 4.0 introduced new thread-safe 'Collections.Concurrent' objects and I've been using them frequently - the one in particular seemed like a good fit for storing each threads' performance data - ConcurrentQueue. But I wanted to store only the most recent X# of calls and since the ConcurrentQueue currently does not support size constraint I had to come up with my own generic version which attempts to restrict usage to numeric types only: unfortunately there is no IArithmetic-like interface which constrains to only numeric types – so the constraints here here aren't as elegant as they could be. (Note the use of the Average() method, of course you can use others as well as make your own).   FIFO FixedSizedConcurrentQueue using System;using System.Collections.Concurrent;using System.Linq; namespace xxxxx.Data.Infrastructure{    [Serializable]    public class FixedSizedConcurrentQueue<T> where T : struct, IConvertible, IComparable<T>    {        private FixedSizedConcurrentQueue() { }         public FixedSizedConcurrentQueue(ConcurrentQueue<T> queue)        {            _queue = queue;        }         ConcurrentQueue<T> _queue = new ConcurrentQueue<T>();         public int Size { get { return _queue.Count; } }        public double Average { get { return _queue.Average(arg => Convert.ToInt32(arg)); } }         public int Limit { get; set; }        public void Enqueue(T obj)        {            _queue.Enqueue(obj);            lock (this)            {                T @out;                while (_queue.Count > Limit) _queue.TryDequeue(out @out);            }        }    } }   The usage case is straight-forward, in this case I’m using a FIFO queue of maximum size of 200 to store doubles to which I simply Enqueue() the calculated rates: Usage var RateQueue = new FixedSizedConcurrentQueue<double>(new ConcurrentQueue<double>()) { Limit = 200 }; /* greater size == longer history */   That’s about it. Happy coding!

    Read the article

  • [Dear Recruiter] I'm an engineer trapped in a kittens body.

    - by refuctored
    Aditya -- I am very interested in pursuing the opportunity you've presented to me.  Let me assure you, there are very few individuals in Indianapolis with the skill set which I have so passionately trained to acquire.   Accompanying my skill set I do have a few quirks that you'll need to be okay with prior to placing me at a company. Bluntly, I feel like I'm a software engineer trapped in a cute little kitten's body.  I find that I am most comfortable going to work with a few stripes and whiskers painted on my face.  Coworkers will need to be okay with me grooming myself and making kitten noises whilst I do so.  I do occasionally let out a purr now and then, but not loud enough to disrupt anyone.  I always throw my arm-hair-balls in the appropriate trash receptacle. Will your company provide a scratching post or will I need to bring my own?  I can bring my own litter box. Meow-muh,George

    Read the article

  • Setting up your project

    - by ssoolsma
    Before any coding we first make sure that the project is setup correctly. (Please note, that this blog is all about how I do it, and incase i forget, i can return here and read how i used to do it. Maybe you come up with some idea’s for yourself too.) In these series we will create a minigolf scoring cart. Please note that we eventually create a fully functional application which you cannot use unless you pay me alot of money! (And i mean alot!)   1. Download and install the appropriate tools. Download the following: - TestDriven.Net (free version on the bottom of the download page) - nUnit TestDriven is a visual studio plugin for many unittest frameworks, which allows you to run  / test code very easily with a right click –> run test. nUnit is the test framework of choice, it works seamless with TestDriven.   2. Create your project Fire up visual studio and create your DataAccess project:  MidgetWidget.DataAccess is it’s name. (I choose MidgetWidget as name for the solution). Also, make sure that the MidgetWidget.DataAccess project is a c# ClassLibary Hit OK to create the solution. (in the above example the checkbox Create directory for solution is checked, because i’m pointing the location to the root of c:\development where i want MidgetWidget to be created.   3. Setup the database. You should have thought about a database when you reach this point. Let’s assume that you’ve created a database as followed: Table name: LoginKey Fields: Id (PK), KeyName (uniqueidentifier), StartDate (datetime), EndDate (datetime) Table name:  Party Fields: Id (PK), Key (uniqueidentifier, Created (datetime) Table name:  Person Fields: Id(PK),  PartyId (int), Name (varchar) Tablename: Score Fields: Id (PK), Trackid (int), PersonId (int), Strokes (int) Tablename: Track Fields: Id (PK), Name (varchar) A few things to take note about the database setup. I’ve singularized all tablenames (not “Persons“ but “Person”. This is because in a few minutes, when this is in our code, we refer to the database objects as single rows. We retrieve a single Person not a single “Persons” from the database.   4. Create the entity framework In your solution tree create a new folder and call it “DataModel”. Inside this folder: Add new item –> and choose ADO.NET Entity Data Model. Name it “Entities.edmx” and hit  “Add”. Once the edmx is added, open it (double click) and right click the white area and choose “Update model from database…". Now, point it to your database (i include sensitive data in the connectionstring) and select all the tables. After that hit “Finish” and let the entity framework do it’s code generation. Et Voila, after a few seconds you have set up your entity model. Next post we will start building the data-access! I’m off to the beach.

    Read the article

  • 3rd Annual South Florida SQL Saturday - August 13th!

    - by ScottKlein
    The 3rd annual South Florida SQL Saturday event will be help August 13th, 2011 at Nova Southeastern University in Davie, FL. This is a change in venue from last year as DeVry is in the middle of a major remodling project. We has almost 450 last year, and we expect to have over 500 this year with great speakers such as Andy Warren, Herve Roggero, and more! As always, we our goal is to feed you well, so we are shooting for some hot lunch food this year. We are working on that now and will update you as soon as we firm it up. One of the things we will be trying this year is 90-100 minute sessions on a couple of tracks. We strongly feel that several topics are just getting warmed up in 45 minutes, so we are going to experiment with 90-100 minute sessions on some of the BI topics. We would love to see you there!

    Read the article

  • Thoughts on Technical Opinions

    - by Joe Mayo
    Nearly every day, people send email from the C# Station contact form with feedback on the tutorial.  The overwhelming majority is positive and “Thank You” notes.  Some feedback identifies problems such as typos, grammatical errors, or a constructive explanation of an item that was confusing.  It’s pretty rare, but I even get emails that are not very nice at all – no big deal because it comes with the territory and is sometimes humorous.  Sometimes I get questions related to the content that is more of a general nature, referring to best practices or approaches. It’s these more general questions that are sometimes interesting because there’s often no right or wrong answer. There was a time when I was more opinionated about these general scenarios, but not so much anymore. Sure, people who are learning are wanting to know the “right” way to do something and general guidance is good to help them get started.  However, just because a certain practice is the way you or your clique does things, doesn’t mean that another approach is wrong.  These days, I think that a more open-minded approach when providing technical guidance is more constructive. By the way, to all the people who consistently send kind emails each day:  You’re very welcome. :) @JoeMayo

    Read the article

< Previous Page | 158 159 160 161 162 163 164 165 166 167 168 169  | Next Page >