Profilo di AndreFurtaSpace - www.afurtad...FotoBlogElenchi Strumenti Guida

Blog


19 giugno

50k visits and a gift for you! / 50 mil visitas e um brinde para você!

 

This blog was born less than 10 months ago. As an evolution of my previous, academic-focused TheSpoke blog, FurtaSpace has a broader line: to share personal experiences and thoughts of our Information Technology Era world, with special focus on software development & engineering, career, games and Microsoft. It was initially in Portuguese, then in English, now it's bilingual.

Yesterday, an achievement: FurtaSpace has reached more than 50,000 visits, now with currently about 2000 visits per week!

Bah, that's only a fraction of what many ordinary websites receive per day, I know, but anyway I'd like to thank you for your time to not letting these posts go into the vacuum!

To express my gratitude, I'd like to give away a 1-year Windows Live OneCare subscription, to one of the first 5 people who comment on ways to improve this blog (topics they would like to see, topics they would not like to see, etc.). These 5 people (or less, if less people comment) will take part in a lottery whose winner will be awarded.

Windows_Live_OneCare

PS: I'll use my AFurtado Random Number Generator, simple/stupid yet useful tool I used to employ when giving prizes during my events in Brazil. If you need such a tool, shame on you for not spending 3 minutes to implement it! you can download it here.

Thanks,
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation

English - Portuguese

Este blog nasceu há menos de 10 meses. Como uma evolução de meu blogue precedente no TheSpoke, o FurtaSpace têm uma linha mais geral: compartilhar experiências e pensamentos pessoais de nosso mundo da Era da Tecnologia da Informação, com o foco especial em engenharia e desenvolvimento de software, carreira, jogos e Microsoft. Era inicialmente no português, a seguir em inglês, agora é bilíngüe.

Ontem, uma realização pessoal: o FurtaSpace alcançou mais de 50.000 visitas, hoje com aproximadamente 2000 visitas por a semana!

Bah, isso é somente uma fração do que muitos sites Web quaisquer recebem por dia, eu sei, mas de qualquer maneira eu gostaria de dar meu obrigado por seu tempo a não deixar estes posts entrarem no vácuo!

Para expressar minha gratitude, eu gostaria de sortear uma licença do Microsoft OneCare a um dos primeiros 5 que comentarem sobre maneiras de melhorar este blog. Esses 5 (ou menos, se menos comentários houver) entrarão em um sorteio.

Windows_Live_OneCare

PS: usarei o AFurtado Random Number Generator, ferramenta simples/estúpida porém útil eu usava para sortear prêmios durante meus eventos no Brasil. Se você precisa de tal ferramenta, se envergonhe por não gastar 3 minutos do seu tempo criando uma! você pode baixá-la aqui.

Obrigado,
-- AFurtado

Os relatos e opiniões deste post apresentam pontos de vista pessoais,
não refletindo necessariamente a opinião da Microsoft Corporation.


15 giugno

A typical Microsoft interview question: try it! / Uma pergunta típica de entrevistas para a Microsoft: tente você mesmo!

 

Here you have a typical question that would be asked to you during a Microsoft job interview:

"People in a given building are complaining that an elevator (or lift, as you wish) is taking too long to move people from one floor to another. How would you solve this problem?"

Think about this question during the week; I'll come back next weekend to share a great answer from my friend, co-worker and previous Imagine Cup Japan 2005 partner, Igor Gatis. It would be cool if you share your thoughts in the comments as well...

elevador

[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation

English - Portuguese

Segue abaixo pergunta típica que lhe poderia ser feita durante uma entrevista de trabalho da Microsoft:

"As pessoas de um dado edifício estão queixando-se que um elevador  está tomando muito tempo para ir de um andar ao outro. Como você resolveria este problema?"

Pense sobre esta pergunta durante a semana; eu voltarei o próximo fim de semana para compartilhar uma grande resposta de meu amigo, colega de trabalho e parceiro da Imagine Cup Japão 2005, Igor Gatis. Seria legal se vocês compartilhassem seus pensamentos nos comentários também…

[] s
-- AFurtado

Os relatos e opiniões deste post apresentam pontos de vista pessoais,
não refletindo necessariamente a opinião da Microsoft Corporation.


14 giugno

Generating .NET documentation files with Sandcastle / Gerando arquivos de documentação .NET com o Sandcastle

 

Sandcastle is a tool that extracts XML comments from code and generates documentation files. The tool is very flexible, but unfortunately, since it requires some scripting from the end-user, it may not be intuitive for those who simply want the basic scenario of generating a .chm (help file) from a .NET assembly.

I've created a simple .NET app (BuildDoc.exe) together with a hacked Sandcastle script (build.bat) to help you to generate basic documentation from XML comments. You just need to follow the steps below:

1. Comment your code with XML comments (duh!). A warning is that your class should be public, otherwise it won't appear in the generated documentation files.

1

2. In the project properties Build tab, select the option XML documentation file. Now when your solution is built, a .xml file with the name of your .NET assembly will be generated as well, containing the documentation.

2

3. Download Sandcastle.

4. Create a new folder in the c:\Program Files\Sandcastle\Examples folder to be used temporarily for the documentation generation. For example, call it "TestDoc".

5. Copy your .NET assembly and its .xml file to the TestDoc folder.

6. Copy my BuildDoc.exe program and build.bat script (get these files here) to that same TestDoc folder. If Sandcastle in your machine is installed in a folder other than c:\Program Files\Sandcastle\, change this twice in the build.bat file.

7. Open a command prompt session. If running Vista, use elevated privileges.

8. Go to TestDoc folder and then run BuildDoc <AssemblyName>.dll.

9. Wait for the generation process to happen. It may take a few minutes.

10. Your generated documentation will be at TestDoc\Output\<AssemblyName>.chm:

3

If you want more control in the generation process, you can do further hacking in my script and other Sandcastle scripts. For example, you can change the generation style from "vs2005" to "hana". I'll leave this as an exercise to the reader. ;)

[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation

English - Portuguese

 

O Sandcastle é uma ferramenta que extrai comentários XML do código e gera arquivos de documentação. A ferramenta é muito flexível, mas infelizmente, desde que exige scripting do usuário final, ela pode não ser intuitiva para aquelas que querem simplesmente o cenário básico de gerar um .chm (arquivo de ajuda) de um assembly .NET.

Eu criei uma app .NET simples (BuildDoc.exe) junto com um script hackeado do Sandcastle (build.bat) para ajudá-lo a gerar documentação básica de comentários XML. Você apenas precisa seguir as etapas abaixo:

1. Comente seu código com comentários XML (dã!). Um aviso é que sua classe deve ser pública, senão ela não aparecerá nos arquivo de documentação gerado.

2. Nas propriedades do projeto, aba Build, selecione a opção XML documentation file. Agora quando você construir sua solução, um arquivo .xml com o nome de seu assembly .NET será gerado também, contendo a documentação.

3. Baixe o Sandcastle

4. Crie uma nova pasta em c:\Program Files\Sandcastle\Examples a ser usada temporariamente para a geração da documentação. Por exemplo, chame-a “TestDoc”.

5. Copie seu assembly .NET e seu arquivo XML à pasta TestDoc.

6. Copie meu programa BuildDoc.exe e o script build.bat (baixe-os aqui) para essa mesma pasta TestDoc. Se o Sandcastle em sua máquina é instalado em uma pasta à exceção de c:\Program Files\Sandcastle\, mude isto duas vezes no arquivo build.bat.

7. Abra uma sessão de prompt de comando. Se estiver no Vista, use privilégios elevados.

8. Navegue para a pasta TestDoc e rode BuildDoc <AssemblyName>.dll.

9. Espere a geração. Pode levar alguns minutos.

10. O arquivo de documentação estará gerado em TestDoc\Output\<AssemblyName>.chm

Se quiser mais controle do processo de geração, mude o meu script ou os scripts do Sancastle. Por exemplo, você pode mudar o estilo de geração de "vs2005" para "hana". Deixarei isso como um exercício para o leitor. ;)

[]s
-- AFurtado

Os relatos e opiniões deste post apresentam pontos de vista pessoais,
não refletindo necessariamente a opinião da Microsoft Corporation.


12 giugno

Testing automatic translation / Testando tradução automática

 

Sometimes machines do far a better job than humans, right? Perhaps translating this blog may be one of these jobs.

This is the first post in which I'm using a "robot" called Machine Translation Bot to translate my blog posts. The father of the creation is Helvecio Ribeiro, a brazilian co-worker at Microsoft. The bot is actually a Live Writer plug-in and requires very less effort to adjust any remaining mistakes. Let's give it a chance!

[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation

English - Portuguese

Às vezes as máquinas fazem um trabalho melhor do que seres humanos, correto? Talvez traduzir este blogue pode ser um destes trabalhos.

Este é o primeiro post em que eu estou usando um “robô” chamado Machine Translation Bot para traduzir meus posts do blogue. O pai da criação é Helvecio Ribeiro, um colega de trabalho brasileiro na Microsoft. O bot é na verdade um plug-in do Live Writer e exige pouco esforço para ajustar os erros restantes. Vamos dar a ele uma chance!

[] s
-- AFurtado

As indicações ou os testemunhos que eu ofereço neste post representam minhas próprias opiniões pessoais. Eu estou falando em meu nome e não em nome da Microsoft Corporation


07 giugno

The Pale Blue Dot

 
Please think about this...


     

Have a nice weekend!
 
[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation.
 

Gadgets, ActiveX and x64 machines

 
I created an ActiveX component using C#, adding the ComVisible(true) attribute to the assembly and enabling the "Register for COM Interop" option in the Build tab of the project properties pages.
 
Then I was trying to make a Sidebar gadget to consume it, using something in its javascript code like: var myActiveX = new ActiveXObject("Namespace.ClassName").
 
After two days with no clue why my gadget was not being able to see the ActiveX, I was finally able to find the cause: my machine is a x64 machine and requires a different process:

1. Setting the target platform as x64 in the project properties build tab
2. Unchecking the Register for COM Interop option

x64

3. And here comes the big trick: registering the assembly for COM interop manually. But a 64-bit version of RegAsm.exe should be used for this: the one located at c:\windows\Microsoft.NET\Framework64.

4. [added 13/Aug/2008]: Register the assembly in the global assembly gache using .NET's gacutil -i <assemblyName> command.

It's not the first time 64-bit machines give me development headaches! This one should be called a nightmare, actually.

 
[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation.

06 giugno

Gyroscopic pool table

 
That's lovely to see technology working to improve game experience (digital or not). This video shows a pool table, in a cruise, that is always level due to a gyroscope.
 
  
 
 
 
[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation.
05 giugno

City Rain - Brazilian XNA game and Imagine Cup 2008 finalist

 
City Rain is the XNA game representing Brazil at the Imagine Cup France 2008 world finals, in Paris. City Rain have already won the second place in the 2nd XNA Challenge Brazil, of which I was one of the judges.
 

cityrain

 
At that time, what impressed me the most was the fact that the game presents a creative mix between two different styles: (city) pieces fall down as in Tetris, while they should be properly put together as in Sim City. The graphics are cute and remind me of nice "pixel art" work.
 
I believe that the environment-specific features of the game (such as properly disposing city garbage) makes it unique, especially for this year's Imagine Cup theme. On the other hand, I personally dislike some of the Sim City "generic" elements which were added to the game, such as violence or disasters like earthquakes (IMHO I believe they could be changed by more environment-specific stuff which would be better aligned to the main theme). But the balance in general is very positive.
 
It seems the game is available for download in its website. If you are only curious about how it looks like, check the video below:
 
  
[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation.
04 giugno

Tip of the week: Office Labs Community Clips

 
If you are looking for a free Camtasia-style screen/audio recording solution, you should try the Community Clips, by Office Labs. The installation takes seconds and just after that the tool is displayed as an icon near to the system clock, and can be easily launched to record any window or region of the screen:
 

comclips

 
Other interesting feature is the fact that you can email or upload the recorded video to Soapbox when you're done. Integration with Office applications is an extra and also interesting case you want to create help videos to the community:

comclips2

 
Give it a try!
 
[]s
-- AFurtado

The statements or testimonies I offer in this post represent my own personal views.
I am speaking for myself and not on behalf of my employer, Microsoft Corporation.