Listing and cloning private GitHub repos - some fun with bash and curl

My current role is awesome - I get do do some agile coaching, quite a lot of teaching, reading up on new tech and from time to time some programming.

Yesterday evening someone just blurted out: what if all of us died at once?! All the code and documentation would be hidden in a cloud somewhere and we will not be able to get it.

That cloud is GitHub and I’m sure it would be safe and that the risk that we all die at the same time is relatively low. Then again - I have booked a raw chicken tasting for our next offsite …

Just kidding - but when that was said my programmer-self sprung to life and I deviced, in my head, a simple script to make an offline copy.

This post describes that script. Oh - I only had 30 minutes spare time to do it...

Read More

How do I kanbanize my 300 items backlog - a response

I got a question, on twitter, the other week about how to handle a long list of backlog items on a kanban board. Here’s the original tweet:

And my adequate translation. The tweet by “The Doubter”

Hey @marcusoftnet. We got a backlog of 300+ un-organised and unprioritized stories that will pass through our #kanban board the coming 10 months. How can we “group” stories to simplify refinement and dependencies between stories?

– by epics?

– funktional areas?

I got his permission to repond here on the blog. It’s a response and...

Read More

getcwd: cannot access parent directories: No such file or directory

The other day we started a new course here at </salt> And the first day we are used to seeing some confusion from the developers and the odd strange, wrongly configured computer (by us). But the error in the title of this blog post:

 getcwd: cannot access parent directories: No such file or directory

had me scratching my head for quite some time. Until I realized that the error message states what was wrong.

Read More

How we start with trust and vulnerable in our developer training

In the </salt> accelerated learning program we emphasizes learning in groups throughout the entire boot camp. We do this through the use of mob programming that is not only a great way to solve problems together but also puts learning front and center. I’ve yet to sit down with any mob and not learn a new thing (I’ve tried 40+ so far.)

But there’s a thing that needs to be in place in order for the learning to be allowed to flow freely; psychological safety. We try to create a psychological safe space through two tools:

  • Trust
  • Vulnerability

Let me, very breifly, expand on how we use this in our training.

Read More

Applied learning - things noticed

I work for a developer accelerated career program. I have (together with Jakob Leczinsky) created a training material that takes people with no professional development experience into professional developers in 3 months. We have now run 4 courses and found jobs for about 100 people. All of them have got rave reviews from our clients, top-line software companies in Stockholm.

But how?! This is quite provocative, even for me. I spent 4 years in university (Go DSV!) - surely you can’t learn as much in 3 months.

How can this work? Because it quite obviously does. I have 100 devs telling me so.

I was pondering this as I picked up the book Antifragile by Nicholas Nassim Taleb for a reread. And things clicked. Our method is antifragility applied to training. And we create antifragile developers.

Read More

How do you get so much done?

How do you get so much done? Where do you find the time?

This is a question that I often get asked and it always catch me off guard. I don’t have a recipe (or do I?) and I don’t think I get more done than others.

But last time when I was asked this question I stopped for awhile and thought to myself - what do I do, and is that something others don’t?

In this particular case I referred to a blog post I’ve written and the question back was:

How do you find the time to write blog posts?

In this blog post I share a couple of my … tricks.

Read More

Scraping with Google Sheets for fun and profit

Yes, yes … I know. I do way too much Google Sheets for my good. But that tool is SO amazing. It’s becoming my first go-to-tool when it comes to small simple tasks at the office. And it allows us to be more data-driven and visual.

And it’s very easy to build aggregation tools for people around the office. For example; the other day we were wondering what kind of technologies that was hot in different cities in Sweden.

From that question, until I’ve created a simple but powerful tool to scrape data from Indeed.com, presented it with a simple filtering function and got it in the hands of the sales team was 45 minutes.

In the process, I learned about two new friends; IMPORTXML and the slicer-feature of Google Sheet.

Let me show you what we did.

Where’s the information?

I headed out to the Indeed...

Read More

Summarizing data over several Google Sheets - an exercise in stats and formulas

In my current job, as Head of Quality and Curriculum at </salt>, my thirst for being data-driven is frequently useful. In particular when it comes to test results for the developers in our courses. We test the developers every weekend (for 10/13 weeks) and we have now run 4 courses using the same tests… A gold mine of knowledge if you can mine it.

To help each developer and us, understand how they are doing we produce a diagram that compares their results to the result of their class (ca 30 people) but also compared to all classes (to date 4 x 30 people).

In the end we want to produce charts that looks like these:

Individual Compared vs. Class

Individual Compared vs. All Classes

But getting there has been quite tricky but oh so rewarding. At the end of this blog post,...

Read More

Metrics on 'well-defined' projects - and what I learned about uncertainty

I’ve just finished a huge project here at work. I have recorded reference recordings of all the lectures in the </salt> bootcamp. It was quite fun, quite exhausting but also quite rewarding as it basically drained me of every system development knowledge I have in me. And some that I didn’t have in me (there’s CSS in there, my friends…)

Obviously, I cannot share the result - but what I can share is what I learned.

I am a fan of embracing uncertainty since I first heard Dan North all those years ago. Most of the work I do is development hence naturally uncertain, as learning is the main constraint. This has led me to ditch the idea of being able to estimate how long a task or project will take before we start.

But still I and teams I’ve coached are often asked this. Before the...

Read More

Why the retrospective prime directive is paramount

I’m about to run a few retrospectives with a group of people with little to no experience of agile previously. In doing my preparations I went back to the core and start of retrospectives, why we do them, their purpose and meaning, etc.

Before long I stumble onto something that I have had some issues with; the Retrospective Prime Directive. But as I read it and was thinking about how to introduce the whole concept to retrospectives to my friends I realize that without the Retrospective Prime directive being agreed on - retrospectives are not worth the time. Or at least not interesting in the long run.

Let me explain what I mean.

The retrospective prime directive

The retrospective prime directive is originally written by Norm Kerth in Project Retrospectives: A Handbook for Team Review, all the way back in 2001. The same year as the Agile...

Read More