barbarianmeetscoding

hackerz edition

I Am Going to Japan!!

| Comments

Japaaaaaaaan!!! The misterious land of the rising sun, the samurai, ninja, amazing architecture, shushi, manga, beautiful landscapes, here we come! :)

tons of guides

I will be in Japan for the next two weeks! Have a greater Easter vacations! ^ _ ^

Dev Talk Monday: Why So Mean?

| Comments

Dev Talk Monday is the series that brings you awesome dev talks every Monday

Today I bring you a super interesting ALT.NET Seattle session titled “Why so mean?” that touches topics like how to be opinionated without being mean, how to create a nurturing .NET community for newbies, how to spread the word about best-practices, and more. As Cori says, it is fascinating to look back and catch a glimpse of a moment in the history of the .NET community :).

Have a great week!

P.S. awesome sweater XD

New Presentation: Edgar Allan Poe Presents the Raven…DB What!?

| Comments

UPDATE 10th April 2014: I did a newer, better version of this presentation for SWENUG – Sweden’s .NET User Group – in Linköping earlier this week and it was a blast!! Don’t miss the code samples at GitHub

A month ago I was hacking away on quiz4couples for iOS (wo! secret unveiled just like that!), slinging some Objective-C up and down, right and left, trying to get these weird storyboards, segues and… outlets to work, when to my surprise and wonder I was approached by an Amazon recruiter (○o○). They wanted me to participate in a round of interviews they were going to do here in Sweden for a job in the Kindle team in Seattle.

I had never ever thought of Amazon as a prospective employer but, of course, it was an interesting opportunity so I decided to give it a try and see where things led to, even though I was not even sure I wanted the job. Well… it led to nowhere, hahaha XDDD. It was a very interesting experience though, the Amazon girls and guys were great and I got to take a look at a bunch of tech stuff I have been wanting to rehash for a while but I have never felt I have had the time to: that is, cool computer science stuff such as data structures, algorithms, networking… and other stuff like distributed systems, scalability, databases, design patterns, NoSQL, and… RavenDB.

Meme!

So just after the interview I got the chance to prepare a presentation around NoSQL and RavenDB for my teammates at Medius, that I will be improving and presenting for Swenug at the end of the month. Don’t freak out with the name of the presentation though, I like to use themes in my talks, as you may have noticed, but in this particular case, I hadn’t the slighlest idea about which theme to use…so I settled for Edgar and his raven:

Some good resources, by the by:

Dev Talk Monday: Yo Polymer!

| Comments

Dev Talk Monday is the series that brings you awesome dev talks every Monday.

This dev talk monday goes to Addy Osmani and Yo Polymer a great introduction to a small piece of the future of the web: web components and polymer a library that allows you to start using web components today! Don’t miss the presentation, it is fun, interesting and packs a ton of goodness in just 20 minutes.

By the by, if you are interested in the web, you should definitely follow Addy Osmani, his blog and amazing presentations on speakerdeck.

Barbarian Meets Knockout: Introduction to Knockout.js Observable Arrays

| 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. These new series will focus on Knockout.js, the popular JavaScript MVVM library

Hi you! Time for some knockout.js goodness! Today I bring thee Knockout.js observable arrays, if you are a .NETter, all you need to hear to grasp how observable arrays work is ObservableCollection<T>, if you are not, thing of it as a JavaScript array that notifies you when you add of remove elements to/from it. Easy peasy :)

In this article I will introduce knockout.js observable arrays, provide useful code examples and describe important things that you need to consider when using observable arrays in your web applications. In upcoming articles I will focus on new features of observable arrays released in Knockout 3.0 and the different helpers provided by knockout to facilitate operating with arrays.

Dev Talk Monday: The Present and Future of the Web Platform

| Comments

Dev Talk Monday is the series that brings you awesome dev talks every Monday

Brendan Eich did this great presentation about the present and the future of the web platform at QCon last year. In it, Eich makes his case about the awesomeness and unlimited capabilities of the web platform, and goes through different elements that make it so: the improved upcoming versions of JavaScript (ES6, ES7), hardcore gaming in the web with asm.js, real time communications via WebRTC, new web standards and APIs that make the web ideal for mobile development, and much more interesting stuff that’s coming in the near future.

Mindblowing talk. If you are interested in the future of the web, don’t miss it.

Last slide with the conclusion of the present and future of the web platform talk

30 Principles or So That Can Help You Become Even More Awesome

| Comments

Continuing with last year’s tradition, I wanted to write a blog post with more principles I have added to my how-to-be-awesome list during this year.

Here they are, in no particular order:

  1. When I get sad, I stop being sad, and be awesome instead
  2. Be kind to people, smile, be positive, spread joy around you. At the same time, realize that you don’t have to please everyone
  3. Anything is possible, you make your own reality, you are in control of your life. Don’t ever feel like you don’t have a choice
  4. Sell yourself well, don’t be too humble
  5. Don’t put energy into things you don’t want more of
  6. Make small projects of every endeavour. Define goals and deadlines. Remember Parkinson’s laws, every task extends itself to complete the time you have allocated for it
  7. Enjoy life! It’s a short trip! Don’t take things too seriously! Loosen up!
  8. Don’t forget the 20/80% rule, 20% of the effort provides 80% percent of the results
  9. Be curious. Always find the why of things! Question everything
  10. Always strive to improve things and yourself, don’t shut up, express your opinions
  11. Get outside of your comfort zone. Make it a habit!
  12. Sharpen the saw. Practice smart. Practice Perfect. How you perform daily is a reflection of how you practice
  13. Be diligent, have discipline, a little bit of work every day makes a huge difference in the long term
  14. Believe in people. People are not out to get you, people are just like you with their own needs, wants and insecurities
  15. See obstacles and change as opportunities. Before obstacles other people may just give up. You won’t
  16. Life is short, build stuff that matters
  17. Do something that scares you everyday. Challenge yourself. You learn/develop the most when you do this
  18. Don’t waste time feeling sorry for yourself. Take responsibility for your life
  19. Don’t give away your power. You are in control of your own emotions, you have a choice. No one can make you feel bad unless you let them
  20. Don’t waste energy on things you cannot control. Focus on what you do control
  21. Don’t shy away from change. Change means new opportunities and things to learn
  22. Don’t dwell on the past and wish things were different. Live for the present and plan for the future
  23. Don’t make the same mistakes over and over. Reflect and learn from your mistakes
  24. Don’t resent other people’s success. Recognize real success comes with hard work
  25. Don’t give up after the first failure. Be persistent and determined. Have true grit
  26. Don’t feel the world owes you anything. You are not entitled to anything, it is up to you to go out and take it
  27. Be a leader. Help and inspire other people to be better
  28. Have your own opinions
  29. Don’t expect other people to agree with you. You are a salesman of your ideas
  30. Don’t be arrogant. Think about other people and other people’s proposals beyond your prejudices and preconceptions
  31. Think about the big picture! Don’t get always captured in the detail
  32. Acknowledge people.

And here it is the shortened version:

  1. Be awesome
  2. Be kind
  3. Be a leader (or, help other people be awesome)

Have a great week!

Dev Talk Monday: Programming Is Terrible, Lessons Learned From a Life Wasted

| Comments

Dev Talk Monday is the series that brings you awesome dev talks every Monday

Thomas Frigg brings this hilarious (and insightful) 40 minute talk about the world of programming . If you are a programmer, you will probably love it :). Don’t forget to take a look at the slides while watching it, they’re great.

I thought I would share a couple of tips on how to be a succesful programmer…

…Don’t write documentation, documentation means that you are replaceable…

… if you fix a bug, make sure it fixes only that case they talked about, so someone else can reopen the bug later..

… the standard library is evil, don’t use things other people understand, the best code is the one that you have written yourself…

Have an awesome week!:)

via maciej and Jan Van Ryswyck

Goodbye 2013, Hello 2014!!

| Comments

Following the tradition I started last year, I thought it would be a nice idea to write a wrap-up blog post on what I achieved on 2013 and what I am planning to do in 2014. Here it goes:

In 2013 I:

  • had the best year yet with my beloved Malin. This just keeps getting better and better :)
  • have been almost 2 years without smoking
  • started my new job as a software developer at Medius and got to work with much more interesting stuff than in my previous job, mainly building a SPA with knockout and ASP.NET MVC. It feels like I have gone from working with legacy technologies to the latest and greatest (or almost XD)
  • did lots of learning
    • Windows 8 and Windows Phone 8
    • Idiomatic JavaScript and a ton of JavaScript libraries and frameworks: knockout, Durandal, angular, etc
    • Node.js
    • Objective-C, iOS
    • DDD
    • vim
  • wrote 27 blog posts. Less articles than during 2012 but of higher depth and quality
  • read 35 books on the most various topics
  • learnt a lot on personal finance and even took a course on financial accounting
  • went to my first hackathon and built inspirr
  • have improved my Swedish dramatically and use it daily both at work and at home
  • have worked on a small number of personal side projects
  • have improved my weight lifting dramatically without using supplements and just through consistency and smart training

If I were to summarize 2013 with one single sentence I would have to say… it was a year of learning, sharpening the saw and broadening my skillset as a software developer, not so much doing, but a lot of learning indeed.

In 2014 I want to remedy that and find a better balance between learning and doing, specifically I want to:

  • continue investing in my awesome relationship with Malin :)
  • start my own company and build some products
  • write my first book
  • become a more awesome developer
  • invest more in my drawing/design skills
  • continue investing in a healthy lifestyle and get a more herculean body XD

Wish me luck! And to you, I hope you have had a great 2013 and that an even better 2014 awaits you!