[#ALM] #House, Occam’s razor and in the end we all make mistakes


ALM 03

Buenas,

Today’s post starts with a statement:

HOUSE is a genius

One can refute me that all chapters are the same, something like this:

  1. Patient X has unknown disease
  2. Give it to House you don’t want to see and accept it reluctantly
  3. Patient X creates a link with one of the assistants of House
  4. House skips rules to see that kind of disease the patient
  5. Team crap it, almost are charged to the patient
  6. To House a good of their bosses drop
  7. In a moment of inspiration, House da with disease

… and always, or almost always, by the way is ruled out Lupus or autoimmune disease.

With this summary you’ve saved to see the 8 seasons of House . However the best that has House, is that throughout the entire series, the protagonist has a nasty / Host which has made to let go a few phrases that are pure wisdom. An excellent example and of which my favorite is:

Women are never wrong, even when they are wrong, there comes a time of discussion in which surprisingly return to reason.

As that, the 3rd chapter of the first season is titled ” “ Completo de Occam Razor “, which translated into spanglish is something like “ Ockham’s razor . Ockham’s Razor is a principle of makes a pile of years (14th century) that says something like this:

In equal, the simplest explanation is usually the correct.

This is pure wisdom, and common sense to the square. When you work in computer science and issues you face every day, you end up realizing that this is a truth for framing. But of course, as in all truth to frame, should take into account the context of each claim.

Today I’m very graphic, so here is a clear example:

image

It is clear not?, I hope that Yes, the simplest statements also tend to be correct.

And now if we can already return to House . In the chapter that inspired this post, House gives one twist to the phrase of Ockham, rethinking something like:

The simplest explanation is almost always someone goofed

This is also 100% applicable to our work every day in computer science. Often we are able to find network problems, problems of deployments, upgrades, etc.; When the 1, that we should do is talk to people to see or who has touched something. It is amazing how a little 5 minute session with people affected by a problem can help more than hours and hours of trial and error with a problem.

And to close, the Council always: fosters a culture of communication in your team, this is fundamental for the correct operation of the same.

 

Saludos @ Home

El Bruno

image image image

[#ALM] Sobre #House, la navaja de Occam y como al final todos la cagamos


ALM 03

Buenas.

El post de hoy empieza con una afirmación:

HOUSE es un crack

Alguno me podrá refutar que todos los capítulos son iguales, algo así:

  1. Paciente X tiene enfermedad desconocida
  2. Se lo dan a House que no lo quiere ver y lo acepta de mala gana
  3. Paciente X crea un vínculo con uno de los asistentes de House
  4. House se salta las normas para ver que tipo de enfermedad tiene el paciente
  5. El equipo la caga, casi se cargan al paciente
  6. A House le cae una buena de sus jefes
  7. En un momento de inspiración, House da con la enfermedad

… y siempre, o casi siempre, por el camino se descarta el Lupus o alguna enfermedad autoinmune.

Con este resumen te he ahorrado ver las 8 temporadas de House. Sin embargo lo mejor que tiene House, es que a lo largo de toda la serie, el protagonista tiene una mala leche / hostia que tiene hace que suelte unas frases que son sabiduría pura. Un excelente ejemplo y de las que más me gusta es:

Las mujeres nunca se equivocan, incluso cuando se equivocan, llega un momento dela discusión en la que sorprendentemente vuelven a tener razón.

Pues eso, el 3er capítulo de la primera temporada se titula “Occam’s Razor”, que traducido al spanglish es algo así como la navaja de Ockham. La navaja de Ockham es un principio de hace una pila de años (del siglo XIV) que dice algo similar a esto:

En igualdad de condiciones, la explicación más sencilla suele ser la correcta.

Esto es sabiduría pura, y sentido común al cuadrado. Cuando trabajas en informática y te enfrentas a problemas diariamente, te terminas dando cuenta de que esta es una verdad para enmarcar. Pero claro, como en toda verdad para enmarcar, hay que tener en cuenta el contexto de cada afirmación.

Hoy estoy muy grafico, así que veamos un ejemplo más claro:

image

¿Queda claro no?, espero que sí, las afirmaciones más simples tampoco suelen ser las correctas.

Y ahora si, ya podemos volver a House. En el capítulo que inspira este post, House da una vuelta más a la frase de Ockham, reformulando algo así como:

La explicación más sencilla es que casi siempre alguien metió la pata

Esto también es 100% aplicable al día a día de nuestro trabajo en informática. Muchas veces nos podemos a buscar problemas de redes, problemas de despliegues, actualizaciones, etc.; cuando lo 1ro que deberíamos hacer es hablar con la gente para ver que o quien ha tocado algo. Es increíble como una pequeña sesión de 5 minutos con las personas afectadas por un problema puede ayudar más que horas y horas de prueba y error frente a un problema.

Y para cerrar, el consejo de siempre: fomenta una cultura de comunicación en tu equipo de trabajo, esto es fundamental para el correcto funcionamiento del mismo.

 

Saludos @ Home

El Bruno

image image image

[#VS2012] NuGet in C++ (in the top ten list for the 2013 )


image

Buenas,

you say that life does not give returns as the succession of Fibonacci , is never skipped a red light and then he fled police in a chase of cinema.

I for example, a few years after leaving, I am returning to C++ in one way rather than aggressive. (Aggressive: is the only way to create well made applications for platforms like ) Arduino .)

However, when the output of your application is a program of only 8K in size, you got that take into account many things to do things well. And at that moment it enters game having good tools. In the case of arduino, the editor of C++ that is shipped is a shit a little poor capabilities. The good news is that wanting it is possible to use Visual Studio 2012 to pull lines in C++.

And when I see the IDE and what is possible and impossible in the world of C++, I find that…

In C++ do have support for NuGet !!!

That Yes, only with version 2.5 or higher, it is possible to update the version from here .

And clear, in a world where each sensor has its own library (or. h), where each scenario is similar to the previous one; NuGet required.

Source: http://blogs.msdn.com/b/vcblog/archive/2013/04/26/nuget-for-c.aspx

Download: NuGet Package Manager, http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c

 

Saludos @ Home

El Bruno

image image image

[#BING] Now with support for… #KLINGON! (if and is not April 1st or December 28)


image

Buenas,

Bing are a few cracks, since a couple of days they have added support for Klingon! And Yes, you read well, is Klingon (I have a spill, no not I have spent with the wines now that I’m single, it’s Klingon!). As we are using it in an internal project of Avanade, I will have to pull the API to see it in real time and here just put my post yesterday… but translated into KLINGON! (do as mola say it not?)

Source: http://blogs.msdn.com/b/translation/archive/2013/05/14/announcing-klingon-for-bing-translator.aspx

PS: to see the automatic process of translation that makes tomorrow with the Spanish + Klingon.

Maj

majQa’ Suq vI’Iprup Quch puS puq mach Segh upDate ‘e’ leghDI’: chu’ cholortlhul ‘ej chu’ layoutS ‘eg QutlhwI team’ ‘ o jabwI’ 2012 bebvo’ jIH.

‘ IjmeH achchount team QutlhwI’ ‘ oH chavmoH laH Dulegh chonayta’, ‘e.g. Datoy latlh’ taHvIS Brian harry nob naQ tetlh, upDate pa’ 2 choH ‘ ej QuQ ghaH potlh.

  • workitem as tHantlhS to cholor rap bachtlhlogh laH DaH DItlhtlherentIate. legh rur ta’ nap, eQtremely lI’ nuq. vaj Hop tHantlhS to yejquv edu ghew-moHaq lan nuq ta’ ‘e’ Segh ghew chaH chev GDP Schope. je layout Rhine moHaq your ‘HomI’ raH wis.

image

  • DaH tIj chapabIlIty ghaj
  • Qu’ neH wa’ nuv legh. ‘ e ‘neH vISIble eym nuv Qu’. Mola
  • jIH QapHa ‘choH SprInt, company pagh prevIouS wa’ vIyajlaH. Je apprechIateD ‘ oH ;)

image

reH naQmoH wanI’mey tetlh tlheatureS je poSt Brian. DAJ, mach upDate ‘ ach molon.

Hal: http://tfs.visualstudio.com/en-us/home/news/2013/may-13/

Saludos @ Home

El Bruno

image image image

[#TFS2012] New Update with incredible colors a cascoporro!


image

Buenas,

Oh I get more happy than a small child when I see an update of this type: new colorful and new layouts in the Team Foundation Server 2012 of Web view.

If you have an account on Team Foundation Service you can see it already, and while Brian Harry gives a full list of changes in this update there are 2 that are important for my.

  • Can now differentiate the WorkItem type in the backlog thanks to the same color. What looks like a simple thing, is extremely useful. So far, thanks to Council’s Edu what we did was put the prefix BUG – in the scope of type Bug to separate them in the PBIs. With this layout is finished as a prefix useless to the WIs.

image

  • Now in our board have the capability of
  • see tasks only for one person. That only leaves visible the tasks of the person. Mola
  • in the view you can see the current sprint, or previous ones. Which is also appreciated ;)

image

As always the complete list of features the Brian describes in his post. An interesting, small update but molon.

Source: http://tfs.visualstudio.com/en-us/home/news/2013/may-13/

Saludos @ Home

El Bruno

image image image

[#VS2012] PowerStory for #PowerPoint with #TFS2012 (I)


image

Buenas,

Tools for the creation of WireFrames are many, perhaps too many. Now, if say me that name a quickly probably the first that comes to mind is Balsamiq. It is not for WireFrames to 100% but it serves the purpose. With the arrival of DEV11 (VS2012 and TFS2012), the friends of Redmond made a very timid approach to prototyping tools with StoryBoards for PowerPoint. The idea was very well, but it came in something that promises a lot but it accomplishes little.

Now on the other hand have an idea very similar but squeezed 100%: PowerStory. The basis of PoweStory is simple; “using PowerPoint to tell stories related with User Stories“. What definition is already a great goal. It is using PowerPoint to what has been created. The idea is that the stories are “painted” in PowerPoint are replacement requirements, user stories, etc.; Since a visually may represent a client needs.

Note:Delicate theme, pick up a need and raise it in visual mode, maybe we are ahead of the implementation of the same. That sure is a complaint of purists, in my case I prefer this to anything.

I return to that I miss. Another interesting point that incorporates this mode of “telling stories” is that from them is generate the Test Cases necessary to validate the same. And if we finally believe in this environment 100% integrated with Team Foundation Server, as it is almost a nirvana (one of the little ones).

This week I have it complicated but I will see take time to test and write about the idea. A video to enter in heat: http://www.youtube.com/watch?feature=player_embedded&v=GxQnOEAux40

HomePage: http://power-story.com/index.html

PS: I am lucky to meet the father of the idea and only say that it is a crack ;)

 

Saludos @ Home

El Bruno

image image image

[#RESHARPER] Tip: Introduce Variable (an internal #refactoring good good)


Buenas,

he other day was the Victor and I was surprised that he did not know the “Enter Variable” feature of ReSharper .Mainly, because the Victor is a fan of shortcuts keyboards, you want to or not, they increase productivity a lot.

Note: you to be fast with the keyboard, does not mean that you’re a good programmer. The writer is an example of this.

Returning to Introduce Variable, the purpose of this functionality is to create an “internal” refactoring within a method or function. Thinking of the most popular cases of refactoring, this is like an Extract Method, but internal. Here is an example, step by step. Suppose we have the following code:

   1: using System;
   2:  
   3: namespace ClassLibrary2
   4: {
   5:     public class Class1
   6:     {
   7:         public Class1()
   8:         {
   9:             string someValue = Guid.NewGuid().ToString() + " - valentino - " + Guid.NewGuid().ToString();
  10:         }
  11:     }
  12: }

and line 9 is a little confusing to us. If we want to implement the sum of the first 2 parts in another variable we can do the following.

1. Select the parts to work

image

2. Press CTRL + r, CTRL + v, or Enter a Variable option.

image

3 We will have this part of our code in another internal variable to the field where we are working. Where can we also define the data type, name, etc. Just great!

image

 

Saludos @ La Finca

El Bruno

image image image

[#VS2012] More powerful search using Quick Launch in Visual Studio 2012


image

Buenas,

a long time ago I commented that the Quick Launch of Visual Studio 2012 is a tool that allows us to work more productively. You press CTRL + Q and you’re within a window with access to all the elements of the IDE of Visual Studio 2012 (including a the of Resharper). The following image shows the Quick Launch, with one of the shortcuts I use most > Source Control Explorer to access.

image

Now, one thing that many people do not know is that it is possible to filter the item type to search. For example, the prefix “@menu” shows only results with elements of the IDE menus. Thus, the search for Source with @menu returns these results.

image

If on the other hand, we want to search for items that are options (from a dropdown), we can use the prefix “@opt “”. “

image

Continuing with this approach there are several more options, for example “@ “ nuget “. “

image

To the telephone numbers you can find them within the options of Visual Studio 2012 (menu Tools / / Options), in the section “Environment / / Quick Launch”. Within this view we can also define if we want to have this feature active, if we want to include the latest searches, etc.

image

 

Saludos @ Home

El Bruno

image image image

[#KINECTSDK] Fluent Kinect (never underestimate what a boring geek can do!)


image

Buenas,

Kinect SDK is all very well, but often can be a pain in the ass / plunger. As SDK complies with the premise of having a real representation of the elements of the sensor, but it lacks a “modern” syntax to work with them.

Note: care that abstract concepts of Hardware so they are “beautiful” is more difficult to bite back.

Here is where the crack of Marcus Hohnert who has created an extension to this model code to the initialization of a Kinect sensor.

   1: var sensor = KinectConnector.GetKinect()

   2:                             .EnableColorStream()

   3:                             .EnableSkeletonStream()

   4:                             .EnableDepthStream()

   5:                             .Seated()

   6:                             .NearMode()

   7:                             .Start();

 

Impressive!

Source: http://passiondev.wordpress.com/2013/05/03/fluent-kinect/

 

Saludos @ Home

El Bruno

image image image

[#OPINION] About the experts, how to improve as a developer and death to Hard Code!


image

Buenas,

image

The popular quotes are amazing, for example say that ‘God helps it to the early bird, ‘ and it is almost always true. My mother has woken up by more than 40 years before the 0600 AM and a son of the very best touched him. There is another who is also a great “practice makes perfect” and in the case of programmers, East if it is 100% real. In my case for years every time I spend less actual hours to programming and I’m noticing.

I still have marathons staying until 0200 AM to finish something, or to try something, but I don’t have the day 100% dedicated to programming. This can be seen, many times when I am faced with a problem I realize that practice, I perhaps need not to resolve it, but if speed to implement it. That is why the phrase “practice makes perfect” is 100% certain. The best professionals are actually working with a technology or tool.

Note 1:I take this opportunity to advise you desconfíes of the gurus who write topics that they don’t know or that they only transcribe things who have read on the internet that. People who know the most, are those who are in the trenches.

Note 2:It is also important to note that while you can be in front of someone who pulls 14 hours a day with a hammer in his hand, that does not mean that he is an expert in hammering. There is also much useless around che.

Returning to the topic of the muscle to set; to practice the best schedule, schedule, and schedule… it is. As the basis of programming is to solve problems, it is important to know to find a response to know your tools. I try to devote at least a daily pomodoro to solve a problem that has nothing to do with my day-to-day work (I have the luck that I prefer my work than my hobbies ;)

The best for this are the Code Katas (Juan Carlos Quijano was a very good intro here), which are exercises to solve problems regardless of the tool or language. I weekly do an internet search to find any interesting, or but I’m going directly to http://codekatas.org/ and try to resolve which is fashionable.

Another technique that I find that he helps me is to learn a new programming language. For this a few months ago I have pointed to Code Academy (http://www.codecademy.com) and excellent site where you can follow tutorials interactive to learn new languages. In my case I have opted for a language that I will surely not I use never: RUBY, but I used to test a site that has something of a Code Kata: http://codegolf.com/

image

3 Note:Some time ago recommended to learn a language every year to be a better programmer. Now I think that it is more important to learn a new platform as a new language… but to taste, the colors.

Now well and finally, another thing to do to be a better professional is to teach. When you begin to explain a specific topic to someone, is an excellent time where your brain starts to do a real analysis of the level of knowledge you have on that subject. At that time internal doubts that at another time you plantearías not soar, also will reinforce knowledge and is an excellent exercise to learn how to communicate (for 3 years had to machine works of psychology students… topic for another post). That is why I close my post with a tip in the form of teaching:

SHORT FINGERS HARD CODE PRACTITIONERS!

I’m going to the bases, but bases. Surely many will have escaped you a constant, or a string with a value hardcodeado which then in production brought many problems (to my ever happened). One way of trying to avoid this is with pain. If pain has proved to be one of the best methods for teaching for years. But, how do you manage to breach a developer pain? as through the eyes with the following steps:

1 Access to the options of Visual Studio. Menu “Tool / / Options”

2 Select “Fonts and Colors”

3. Select the item “String (C# @ Verbatim)” and changes the color of background and text, for something thathurts. In my example is lime background with yellow font color.

image

4 Starting from now hardcodeado code will look like

image

5. What hurts?

Recommended reading

 

Saludos @ Home

El Bruno

image image image