barbarianmeetscoding

hackerz edition

The Path to Jedi Text Editing. Two Weeks Into Vim and VsVim

| Comments

I would say I was pretty proficient writing and editing code. I have always been a pretty fast typer since I can recall (~100 wpm), albeit with my weird own style of typing (Home row what-is-that?). I am also quite good with ReSharper, which really gives me wings when doing macro-application-aware editing or navigating inside my solution and a great sense of flow when doing TDD. I would say I was pretty proficient writing and editing code, that was once, that is

One Does Not Simply Learn Vim Meme

Two weeks ago I started using proper typing skills, two weeks ago I started using vim and the vsVim plugin for Visual Studio and maaaan it’s been tough :). The promise of ultimate productivity that we programmers so much long for, that same promise of a seamless interface between our brains and the editor where our thoughts become code, pushed me once more into the abyss… but I am alive and kicking, and here is my story… xD

The first day typing with the home row I dropped to a staggering 10wpm, hell yeah!. I have never felt in my own skin how detrimental subpar typing skills can be to programming (although I understand it is freaking obvious): Coding wasn’t even fun anymore. It has gotten better though, I type now at a steady ~60wpm, and I enjoyed a lot going through the process and reflecting about why the keys are layed out the way they are. Every day is a new wonder XD, I can recall and even see myself talking to Malin about typing… go figure.

And vim; I think I have tried learning vim twice before. I am starting to think that there is a time for every teaching, for every lesson to be learned, sometimes one is just not ready. This time it appears I was, I totally understood, I got it. The first experience opening vim was still scary though, particularly with how spoiled I am today in regards to aesthetics, but then I got it “You are supposed to customize it, Doh!”. I have started using both vim and vsVim and I like it, I do feel like a code surgeon, precise, and I feel free, navigating through the code is a breeze.

The funniest thing of all, that which tells me that vim does indeed work, is that I am trying to vim my way through everything: when typing an email on Gmail or Outlook, when writing a wiki entry on Confluence, or a description in Jira… :)

Well, that’s all for now. I’ll keep you updated on how this whole foolishness ends up xD. Have a nice weekend!!

And Some Interesting vim Resources for the Initiated and Non Initiated

Inspiration Corner: Minecraft the Story of Mojang

| Comments

The inspiration corner is the space where I share talks, speeches, videos, articles, posts, whatever that helps me keep my motivation, energy and passion fresh, and what I hope will serve you as well as it does me.

I like to see myself like a beam of positiveness, an inexhaustible source of energy and unbending willpower. Sometimes, however, I get tired… veeery tired. In those moments, I find it is great to recharge with inspiring tales and stories of others. Like this one, the story of minecraft and mojang.

Don’t miss it, it’s available on the official website or the pirate bay. Believe me, you are going to love it :).

P.S. If you get the deluxe edition you’re gonna get a tooon of extra content XD

Quick! Come to dotNetConf!

| Comments

dotNetConf, the free, virtual conference of all cool things .NET started just two hours ago! Come and join, there’s a bunch of smart developers hanging out on Jabbr following the event.

dotNetConf logo

Btw, you can access all sessions from the conference on YouTube. They are being added as they are recorded. Isn’t that awesome.

Barbarian Meets Knockout.js: Introduction, or How to Enrich Your HTML Views With Unparagoned User Experience

| Comments

The “barbarian meets” series are a collection of articles that intend to introduce and explain useful libraries, frameworks, tools and technologies in simple and straightforward terms.

Have you ever done any XAML development? Have you ever wondered or considered how cool it would be to use XAML-style data bindings and MVVM on the web? How awesome to get that level of rich user experience and separation of concerns? Well, that is what Knockout.js is all about.

And now that I have painted a clear picture in your mind .NET developer, and alienated you non .NET developer for using a completely useless simile I will go with the more accurate, yet less sensational introduction:

Knockout.js is an outstanding JavaScript library that lets you create super rich user experiences in the web by providing an easy and seamless way to sync your HTML views with your underlying data. Its core strengths: declarative two-way data bindings and a full-blown templating engine.

I understand… words are just words… you want to see some code! Behold!!!

Epic Articles Week 11 2013: This Time About Web Development.

| Comments

Welcome stranger, sit down by the fire and let us hear the epic deeds, the tales of joy, of woe and of note that occurred these past seven days.

These past two weeks I have been doing 100% front-end web development, loads of JavaScript, Knockout, HTML and CSS both at work and at home. And so, I have been reading a bunch of books and articles on the matter. Below you can see the best of them:

Epic Articles

CSS

UX

HTML5 Mobile Development

JavaScript

I am going through one of those hibernation periods in which, not matter what I do, I cannot wake up at 5 am as usual and thus, my side-project development hurts xD. Anyhow, I have managed to start a new Knockout project called iPomodoro, and although it is very, very green still, it is meant to become some sort of Pomodoro technique web-based application. More on that soon :)

Cheers!

Barbaric Tip of the Week: Improve Your Productivity in Visual Studio With Quick Launch/Quick Access

| Comments

Barbaric Tip of the Week is a weekly series whose main purpose is to share tiny bits of knowledge that I find specially useful and interesting.

Ever since I read focus (Leo Babauta 2010) and found out about application launchers - little utility applications whose sole purpose is to launch other applications with mininum effort - I have been unable to live without them.

An application to launch other applications? What? You may wonder. What do I need that for? Ok. Imagine this scenario: You are typing some code in your favorite editor, or writing an article of some sort, and suddenly you want to download some images from the internetz to use in your app/article, so you go grab your mouse, move it around, click, click, click, until you get to open your browser and search for the images.

With a launcher (like launchy), you would type ALT+SPACE to open launchy and type Chrome or Google TAB I can has cheezburger, press enter and boom there you are, within Chrome. If you extend this to any application or file within your computer (not taking into account launcher extensions, which we could XD), you can easily appreciate its immense usefulness.

Launchy seach screenshot

Ok, now that you know what a launcher is, imagine that you could have the same functionality for Visual Studio. Imagine that, from one place, you could reach all menus, windows, tasks and commands within Visual Studio. That’s what Quick Launch (and Quick Access in Visual Studio 2010) brings you. Everything that you usually need to use the mouse for (evil mouse ⌐⌐) can now be reached from Quick Launch.

Let’s see some examples to illustrate the advantages of Quick Launch. In Visual Studio 2012, click CTLR+Q to access Quick Launch,type recent and open a recent solution.

How to open a recent solution with Quick Launch screenshot

Once you have opened a solution (what you can access via Quick Launch depends on context), type some of the options below or write whatever you want to your heart’s content:

  • close all: Close all documents
  • package manager: Open NuGet Package Manager
  • output: Open output window
  • new project: File -> New -> Project
  • team explorer: Open Team Explorer
  • add class: Add a class
  • run test: Run all tests in solution
  • line numbers off: Turn off line numbers in the text editor
  • sql server: Open Sql Server Object Explorer

You can event use it with ReSharper whenever you forget any shorcuts or as a learning helper tool. For instance, I always forget the shortcut for Surround with Template, so CTRL+Q, type resharper surround and TaDa! it’s CTRL+E, U:

Quick Launch help you learn resharper screenshot

A Note About Quick Access for Visual Studio 2010

If you are using Visual Studio 2010 and not VS2012 fear not, Quick Launch was released as Quick Access as part of the Power Productivity Tools extension. You just need to install it as you would with any other extension and you are pretty much done. One last thing though, by default, Visual Studio 2010 and Power Productivity Tools assign CTRL+3 to Quick Access, if you are using ReSharper you will know that CTRL+<number> is assigned to bookmarking, so you might consider changing the shortcut to CTRL+Q instead.

Ok, comrades, that’s all for today.

Cheers!

New Beginnings

| Comments

Looks like I was not able to start building anything this past month after all :). I have been suuuuuper busy trying to catch up in terms of web dev skills for my new job at Medius. I started just two days ago and I am in the midst of the hardships/enjoyment of a new codebase and having lots and lots to learn xD. I am really looking forward to the next 6 months :).

Here are some interesting resources I looked at this past month and I wholeheartedly recommend:

Also, Microsoft awarded me with the Microsoft Active Professional 2013 award… which was cool and unexpected XD.

Professionals who are most current in Microsoft technologies receive their distinction as Microsoft Active Professional.

This distinction is given to less than 5% of the population of professionals, with the aim of recognizing their active participation in the community and commitment to stay in touch with the progress of Microsoft technologies.

From MSDN, we are convinced that the success of any project depends not only technological product. It is good people who make the difference.

Microsoft Ibérica What Is MAP?

Microsoft Active Professional 2013 Award screenshot

Cheers and tons of hugs for my colleagues at IFS for being freaking awesome during this past year and a half! :)

How to Win Friends and Influence People

| Comments

Sunday! :) I used to hate Sundays when I was a kid… last precious minutes of the weekend before going back to school on Monday, trying to avoid going to church… then I grew and Sunday unequivocally equalled hang-over :) Today however, Sunday means the day I close open loops and get things done to wrap up the week nicely (yeah, for real, it has finally come to this XDDD).

Anyhow, here goes a little of weekend sunshine for everyone. This time through a book that should be mandatory reading in every school, university and shrine of education: How to Win Friends and Influence People, written in 1936 by Dale Carnegie and that remains, nonchalantly, fresh as the very day it was written. Read below…

Your smile is a messenger of your good will. Your smile brightens the lives of all who see it. To someone who has seen a dozen people frown, scowl or turn their faces away, your smile is like the sun breaking through the clouds. Especially when that someone is under pressure from his bosses, his customers, his teachers or parents or children, a smile can help him realize that all is not hopeless — that there is joy in the world

Dale Carnegie How to Win Friends and Influence People

and smile.

P.S. I have started refreshing ASP.NET MVC by doing some coding creating a new entry in my wiki, with a little bit or Razor and IoC. Yey!