Categories
Project Management

SCRUM Methodology

For project managers who are training in SCRUM agile, here is a reference. In SCRUM user stories are added to a product backlog, which are organized and prioritized by the product owner into a sprint backlog. The work that needs to be done is in that sprint backlog and is worked through and checked on […]

Categories
Project Management

Getting Things Done with Process Design

In this article we consider how to design better processes (such as business processes) and contemplate alternatives to a business process that will achieve certain criteria. Process design is a way to examine business (and personal) processes for efficiency and effectiveness. It’s way to get things done. Process design is something that not enough people […]

Categories
Project Management

Coaching as a Team Leader

In this article, I talk about how a team lead should be a coach and mentor to the team. I talk about a few scenarios and about the contrasts between the “coach” and “fixer” mindsets that leaders can adapt. This applies in other management and leadership positions, but the example I’m using is one specifically […]

Categories
Web Development

Reactive Programming with JavaScript, Ruby and Python

Reactive programming is a concept that is finally gaining some popularity among programmers. It makes it easier to think in data flows and to manage and work with them. Instead of imperative programming, you’re thinking about code as a series of processes that take place on streams. This is similar to the conceptual shift to […]

Categories
Web Development

Speeding up Ruby on Rails Tests and RSpec

There comes a time in the life of every Ruby on Rails project where you and your team will end up with long running tests. Rails tests can contain factories, fixtures and lots of setup procedures before tests are executed, and all of these can contribute to major slowness in the test runs. I’ve seen […]

Categories
Web Development

GraphQL with MongoDB using Mongoose and Node.js

As part of a prototype/exploratory project in March 2016, I explored how to build a GraphQL server using Node.js and interfacing with a MongoDB database using the Mongoose library. The best reason to use GraphQL is if you have multiple frontend clients that communicate with your backend and they each have differing data needs. For […]

Categories
Web Development

PyCon Canada 2017: “Python as a Philosophy”

I was in Montreal, Canada for the PyCon Canada 2017 conference and presented on the ideas and philosophy that are present within the Python programming language. I covered how the Python language influences your coding style and how that coding style is now in the mainstream and has made its way into other programming languages. […]

Categories
Project Management

Cause & Effect Diagrams

Cause and effect diagrams, also known as Ishikawa diagrams, are one of 7 basic tools of quality. You won’t see them used very often in software development or IT projects though they should be. So today we’re going through what cause and effect diagrams are, why they’re useful, an example diagram, and case studies. What […]

Categories
Project Management

Using SEMAT Kernel for a Software Project

The book “The Essence of Software Engineering: Applying the SEMAT Kernel”, by Ivar Jacobson, provides a new way of managing software projects. What’s advantageous about it is that it can be used on top of your existing project management techniques. At its core, SEMAT consists of three layers: customer, solution and endeavour. In each of […]

Categories
Web Development

JSON C++ Tutorial

If you want to learn how to parse and generate JSON with C++ you have come to the right place. JsonCpp is a good solid C++ library to work with. The code samples below show that you can easily work with C++ and JSON files. What’s interesting about JSONCPP is that Google uses it in […]