Saturday, August 13, 2016

This is what I read

I read a lot. I think that reading is one of most important activities one can do in order to improve and become better.

clip_image002

I share most of what I read on my Twitter account. Recently more and more people ask me where I find the stuff I read. So I decided to share with you my sources.

There are 5 main sources where I constantly find great articles, videos and posts:

1. Feedly – here I keep my blog roll (you can find the full list in the end of this post). It is a simple RSS reader where I subscribe to the blogs that are the most relevant to me and which I want to be up to date with their content. if I land on a good post in an unfamiliar blog, I go through the last 3-4 posts and if most of the content is actually good and relevant, then I add the blog to Feedly.

2. Twitter – unlike Facebook, that is full of my friends posts (and pictures), in Twitter I follow business newspapers, tech news, engineering content, leading CEO’s and tech world “celebrities”.

Netanel Lev wrote once a post describing the difference between Twitter and Google Reader (like Feedly) - Twitter is my radio station, Google Reader is my disc player! This post describes perfectly the difference between a RSS reader that has predictable content that you have chosen like music on a CD (Yes I know, that is an old post Smile). And Twitter, that is unpredictable and “every new tweet is a song that maybe I like or not”.

3. Pocket recommendationsPocket is my favorite and most used app. I keep there everything I find interesting, in order to read it later, when I have time. Another cool Pocket feature is a recommendations feed that is created by different members of the Pocket community (the content that they recommend to others, and by Pocket itself using personalization mechanisms). The more you read the better recommendations Pocket will provide for you.

4. Software Lead Weekly – this is a weekly mailing list created by Oren Ellenbogen. It aggregates great articles and videos regarding tech, leadership, startups and engineering culture.

5. Books! Posts, articles, videos, tweets are great way to learn new things and be updated with what happens in the world. However, if you wish to master something and become a true expert you have to read books. A post by some expert can get you this far, but a whole book that is written by that same expert will teach you whole lot more. This post has a list of 95 books in various topics that are probably relevant to you. This is a great place to start building your library.

P_20160813_192102

I think that you should have at least 2 sources (besides reading books):

(1) A blog roll that you have picked based on your interests (you can use any RSS reader, Feedly is my choice).

(2) “An unpredictable radio” – Twitter, Pocket, Medium and more in order to be exposed to new sources and things you didn’t know that exist.

clip_image006

Keep reading!

 

As promised here is my blog roll:

.NET

1. http://dailydotnettips.com/ - Short posts of great tips in .NET and Visual Studio

2. https://visualstudiomagazine.com/Home.aspx - .NET news

3. https://shonnlyga.wordpress.com/ - a friend of mine who writes about .NET related stuff

4. http://www.dotnetrocks.com/ (podcast)  - no need to listen to all of the episodes – pick the ones that you feel are relevant to you

5. https://codeblog.jonskeet.uk/

6. https://ayende.com/blog/ - Oren Eini, one of the best developers in Israel (some say that in the world). He used to write about .NET low level stuff but now most of his posts are about RavenDB (his product - .NET based DB), Sometimes he shares some bugs that they had and more interesting stuff

7. https://visualstudiomagazine.com/rss-feeds/blogs.aspx - Visual studio blog posts

8. https://visualstudiomagazine.com/rss-feeds/news.aspx - Visual Studio news

9. https://blogs.msdn.microsoft.com/dotnet . NET announcements

10. http://visualstudiomagazine.com/rss-feeds/features.aspx -new features in the NET world

Architecture:

1. https://lostechies.com/ a blog with several great writers: the creator of AutoMapper, CQRS and event Sourcing experts and more

2. http://martinfowler.com/ - The one and only Martin Fowler.

3. http://www.aviransplace.com/ - Head of WIX backend. He writes about software solutions, architecture and management

4. http://www.softwarearchiblog.com/ - The best Israeli Hebrew blog.

5. http://enterprisecraftsmanship.com/

UX:

1. http://uxi.org.il/

Tech stuff:

1. http://www.hanselman.com/blog/ - Scott Hanselman’s blog

2. http://www.hanselminutes.com/ - Scott Hanselman’s podcast

3. https://thefutureorganization.com/ - Hebrew Tech podcast. My favourite episodes are “Bumpers” – one hour of 2-3 minutes short discussion about variety of technology topics like frameworks, tools, announcements , posts and more 

4. http://blog.house-of-code.com/ - Yossi Shmueli’s blog

Culture:

1. http://blog.crisp.se/ - Used to work in Spotify and now in Lego!! Greatposts about agile, lean and culture

2. http://www.joelonsoftware.com/ - Joel Spolsky the creator of Stack Overflow and Trello. Worth following him on Twitter.

3. http://blog.karmona.com/ - Moti Karmona’s blog

4. https://blog.8thlight.com/ - culture and leadership – software oriented

5. http://www.mngttips.com/ - Hebrew podcast about management

6. http://shavua.net/ - The BEST Hebrew podcast! It’s about startups. They interview the biggest Israeli CEO’s, CTO’s and enterpanures about their startups success or failure.

7. https://thefutureorganization.com/ - Podcast regarding the culture in different organizations and startups

8. https://lnetanel.com/ - Netanel Lev’s blog

9. https://medium.com/@rabashani/ - Shani Raba’s blog

10. http://randsinrepose.com/

11. http://www.timeninjablog.com/ – time management tips

12. https://apakash.wordpress.com/ Alon Pakash’s blog

Web:

1. https://fivejs.codeschool.com/ - 10 minutes podcast episodes about the latest libraries and feature in JS.

2. https://internet-israel.com/ - Hebrew blog

Tech companies blogs:

1. http://blog.wix.engineering/ - Wix blog

2. https://code.facebook.com/ - Facebook blog - Priceless!!!!

3. https://labs.spotify.com/ - Spotify

4. http://nerds.airbnb.com/ - Airbnb

5. https://baremetrics.com/

6. https://blog.twitter.com/ - Twitter

7. http://githubengineering.com/ - Github

8. http://engineering.instagram.com/ - Instagram

9. https://engineering.pinterest.com/blog/rss - Pinterest

10. http://techblog.netflix.com/ - Netflix

Tuesday, August 2, 2016

The Project of Your Life

By settings personal goals we improve ourselves and become better. I use Lean and Scrum principles for creating and tracking my personal goals.

Keep reading and see how it works.

 

When working on some project we set milestones, long term goals, short term goals and KPIs.

We track progress and learn from our work by having retrospective meetings and checkpoints along the way.

Now imagine you have a very large project ahead of you and you don’t plan at all. You just float and react to the different events along the way. Do you think you can make it right? On time? On budget? The answer, like always, is “it depends”. However, it’s more likely that you won’t.

In order to succeed, we need to manage our life and not be managed by it. You need to manage it exactly like you would manage that project.

multitasking

Your life is a project and you are its developer, designer and product manager

How many times did you say to yourself that you need to be better in this and that you should learn that? How many of those goals have you actually accomplished?

The first step is to define what you want. I personally like this article. It makes me think about my strengths, weaknesses and just the things I want to know. I have a dedicated time every six months when I go over these questions and create my long term goals. These goals are the things I want to accomplish in order to be successful and better than I am today. I keep them in my Google Keep notes.

*These are my personal goals:

1

Every personal (and not just personal) goal should be well defined (SMART goal).

Specific – Your goal definition should answer these questions: Who is involved? What do I want to accomplish? When?
Measurable – How can you measure progress and know if you are done?
Attainable – How can this goal come true?
Realistic – Be honest with yourself. Don’t define unreachable goals.
Timely – Provide a time frame. Then, creating 6 month goals, you are ready to do it.

Breaking Down Long-term Goals to Short-term Goals

Defining long term goals is the first step in improving. Setting a goal is better than setting no goals at all. Writing it down is a commitment to yourself.

In order to accomplish a long-term goal, which is usually a big goal (I want to master JavaScript, etc.), we need to break it down to smaller pieces – smaller goals (milestones) that we’ll accomplish along the way. Those goals should also be SMART goals. I have a recurring monthly time when I go over my long-term goals and decide what I want to do this month in order to get closer to accomplishing the whole goal. Like in Lean development, I constantly adopt and change my goals according to the situation (Perhaps there is no reason why I should learn JavaScript anymore?).

The monthly short-term goals don’t always have to correlate to the long-term goals. Perhaps I want to take care of something in my job or maybe learn something that is not part of my long-term goals and is important for the following month. To be honest, it doesn’t really matter. As long as you take time to think about it, take a decision and commit to it by writing it down you will improve and be better. That is the whole point.

2

If you have never tried to “manage” your life and set goals for yourself, then I suggest you start with monthly goals. Think about the month ahead of you and try to define how this month will become a successful one.

If you have set personal goals before, then I suggest you take it further.

A month is a lot of time – four whole weeks! Usually when we have so much time ahead of us, we won’t start any task until the very end-and that is only if someone reminds us about it in the first place. That’s called the student syndrome.

Weekly and Daily goals

Scrum uses sprints in order to prevent the student syndrome. I like to look on my weeks as sprints. Every week has a sprint planning and a retro. I go over the previous week’s calendar and see how it went. I try to find the things I need to be better in and the things  I need to preserve and keep doing. This way I can improve and track my progress weekly. At the beginning of the week I have a dedicated time for planning my weekly goals which are subsets of my monthly goals, and the tasks I need to accomplish this week regardless of any long-/short-term goal.

3

During the week I have a “daily standup meeting” (although I do it on the train on my way to work) using Any.DO. This has a very cool feature that at 08:00 makes me go over my daily tasks and decide when I want to do them (sometime today or later this week).

4

5

It is simply a to-do list that reminds me of the tasks I need to accomplish every day.

Every week ends with a retro. I go over my previous week and write down important notes, facts and decisions. I write them in Penzu, which is basically a diary with a very cool feature –every week it sends me the note I wrote a year ago. This way, I’m constantly being reminded of my decisions (you need to use it for a year in order for it to be effective - don’t give up!).

6

Summary

If you want to improve, you need to set personal goals.

The goals should be both long- and short-term.

Track both of them in Google Keep.

Every week, set yourself weekly goals and have e retro for the previous week. Write it down in Penzu and be reminded of it afterwards.

Have a daily meeting using Any.Do.

 

 

This works for me, perhaps it can also work for you.

Or maybe I’m just crazy Smile

 

Acknowledgments:

Netanel Lev and Shani Raba for reviewing the post.