Marcus Node Bits - Let us talk about yield and generators, shall we?

Koa Js removes need for callbacks but still have uses non-blocking code. How is that possible? If you read the code of the last blog post you might have reported a bug or two since I was using a strange asterisk at in the getGreeting-function. Is that really valid Javascript? And when you looked very closely you might be wondering about the “yield” right there in the middle… What kind of witchcraft is this thing anyway? These questions and more flew threw my head when I first learned about Koa and the concepts its’s built upon. In this post I will try to explain that a bit and point you to other places where they explain this much better, if you don’t like my tries. This is just how I, a newbie to these concepts, have tried to wrap my head around it. Hey, let’s be completely transparent and say...
Read More

Marcus Node Bits - Let us talk about Koa for a while, shall we?

Ok, let’s talk about KoaJs. Why? Well, it’s new and shiny. But that’s not it. And it’s tiny and stays out of your way. But that’s not it. It’s created by the awesome crew behind ExpressJs (and others). But that’s not it. It teaches me about new things. And really strange things. Like generators for example. But that’s not it. No. The Reason I really wanted to get your really important fact that we would like to hold on to in the rest of the text attention is something different altogether. This has to Stop. I’m by no means a seasoned Javascript developer but I’m already starting to dislike the code callbacks forces me to write. Yeah, I know, there are ways around it with promises and everything, but still have a hard time grasping that. Sorry. I hope there’s another way ^^ I mean; “getUserFromDatabase()”… what would you expect...
Read More

Setting up a complete Node development machine. From scratch. For free

I got yet another computer. To work on. But there will be slow days on airports and hotels with this baby to... So I decided to try something new; I decided to go Linux and setup a development environment for Node Js. I did not set up a goal of this being a no-cost project, it just ended up that way (with one worthy exception, in the end). I have never used Linux before and decided to go with Ubuntu that looked like it would suit my Windows/Mac background best. It did too. It's been a pure joy to use so far. This blog post described what I did and what obstacles I ran into on the way. It was ... not surprisingly maybe... but at least gratifyingly simple and smooth. I've tried to describe it so that you can be both a total newbie and a little bit more...
Read More

Do you think Kanban can help us?

One thing that is really interesting and very enjoyable is to have long time contacts over social media (in my case Twitter mostly). Many of these people I have never met in reality and I still consider them friends. We know quite a lot about each other and have learned a lot from each other. Kristof Claes was the guy that introduced me to NancyFx and SimpleData in 2011. From an excellent blog series about a photo blog (couldn’t find a link…) he thought me a lot. He has now got an opportunity to use Kanban at work and asked me a question about that. I asked him if I could blog the question and my answer and he agreed. Here you go: First Kristof’s question: I have a very very limited knowledge of kanban and I *think* kanban can help us with a situation at work, but I'm not sure. I will briefly...
Read More

Team Yayasan week 4 - Throughput and lead times

The last week the blog post turned long. Sorry. This meant to just be short updates. Here’s another one. The first thing I did this week was to create a diagram over our throughput; the number of items we’re getting done per week. And it looked pretty bleak. And was about to get worse… Here’s how it looked at the beginning of the week. | | |:——————————————————————————————————-:| | | | Throughput trend at the start of the week | That’s not looking good, right. I think I can explain it… and I think that I shouldn’t care too much about data with these few data points. A lot of the things that we are doing require third part input. Someone else needs to approve, read or work with the item before we can finish it. I’ve been working with a LOT of teams that have this situation. It’s a drag…...
Read More

For the Indonesian War Cry - Achieve more by doing less

DISCLAIMER for frequent readers of this blog: I now work for the Salvation Army in Indonesia and they asked me to write an article from time to time in the Indonesian War Cry (the Salvation Army magazine). I of course used my normal style of writing and wrote about the thing I’ve written about here. Oh, not Javascript or Nancy maybe but Limit WIP, Lean and Kanban. But with a Christian twist and message. So if you don’t want to read this, please stop now. I’ll soon come back to my normal things. But if you want to please continue. Maybe there’s something that you can use in here. Or not. As normal on this blog, I use it to store my ideas and thoughts. END DISCLAIMER Here is the second of two short articles that I’ve written for the Indonesian War Cry. You can read the first here. This article is about Achieving more by doing less. I hope you...
Read More

For the Indonesian War Cry - On Motivation

DISCLAIMER for frequent readers of this blog: I now work for the Salvation Army in Indonesia and they asked me to write an article from time to time in the Indonesian War Cry (the Salvation Army magazine). I of course used my normal style of writing and wrote about the thing I’ve written about here. Oh, not Javascript or Nancy maybe but Limit WIP, Lean and Kanban. But with a Christian twist and message. So if you don’t want to read this, please stop now. I’ll soon come back to my normal things. But if you want to please continue. Maybe there’s something that you can use in here. Or not. As normal on this blog, I use it to store my ideas and thoughts. END DISCLAIMER Here is the first of two short articles that I’ve written for the Indonesian War Cry. I hope you like it. I was asked...
Read More

Team Yayasan week 3 - Understanding the problem and sloppy limits

Every week (or in case of this week) we hold a short retrospective. It’s very informal is basically just us asking ourselves what worked and what did not. And then we change something. I think that is very important. We change something. In order to improve. Those changes doesn’t have to, and up to now most haven’t, been suggested and implemented at the retrospective meeting. But we try to improve in small steps. Often. Hmmm someone should write about that. Going into this week we decided two things to improve: Deep dive into why we don’t get reports in time Lower our work in process limit from 14 to 12. One of those were very successful and one was not… Sloppy board management I have coached more than 40 different agile teams using board, like ours (btw here's the state on this morning). Many of them has not used a...
Read More

Team Yayasan week 2 - Transparency, culture and lower WIP

This week was really, really interesting. The things that happened on the board and within the team was good but what happened with our interactions with others was both unexpected, a bit though and also important. I’ll try to describe both things without revealing to much details about people and events. Speaking of that, I got a comment about being this transparent with our work and there’s probably other thinking about it as well. Yes, I can see you. I can read your mind. You will give me $10000 Just kidding. But I have asked the team. I have checked the cards. There should not be anything too controversial on there. And finally, and most important, we are striving to introduce a greater degree of transparency and openness in our organization. I think it’s very important that we are transparent with our work. For us and for others that will follow...
Read More

Javascript callbacks - cannot live with them cannot live without them... or can you?

This is a confession post. Yes, I’m a phony too. I pick up some things very late. Like JavaScript. And Node and … well a lot of things. But I’m sure that a lot of people have run into this and maybe, just maybe, there will be some others that haven’t run into it yet. So this might help someone. Or me, for that matter, when I come back to this problem later. It has to do with callbacks. The things that Node is made up of. And how they confused me a lot. And how I grew to love them, then hate them, and finally get them. And right about that point realize that there’s another way. Let’s see if I can explain this. Just as an experiment. Everything in node is event-driven (as from their mission statement on the homepage) and non-blocking. Which means that you see a...
Read More