Planning enough time to do it

Most people like to find all options they have available to them, weigh the pros and cons of each one with the best possible result being the desired outcome. However, there is one variable of the outcome that is often neglected, the duration to reach the outcome. Instead of discussing the plan, if the first suggestion is reinforced with agreement by another automatically more often than not something some work will begin. It might not be the best choice but something is being made whilst a better idea is being decided upon. The something that is getting done if put forward by someone sufficiently clever will more than likely be relatively close to the best idea when it’s determined. Also it will most likely be able to get adapted to work before the completion of starting it from scratch in the present moment.

The development cycle for software is very similar, there is always the discussion of whether it would be quicker to adapt something that already exists, i.e. the time to learn its structure and behaviour versus the time to work out your own and build it. In smaller systems the first option is often the quickest and in larger systems it is easier to make your own.

This is the argument the committee in my head is having at the moment over making CMS, I wasn’t going to tell anyone about it but I typed most of it out anyway in a comment I was going to make at KCNB and I thought that I’d rather keep it for posterity here and drop a trackback to her.

Hazel, the owner of KCNB, is coding a game as a degree project, she’s a little perturbed about spending so much time planning and using the scrum development method. In a nutshell to adhere to its methodology you say what you are going to do and do it in the time allotted.

Accordingly you need to workout, usually in length what you can do before you do it which often means a lot of unproductive talk followed by anticipated achievements which can be very reassuring to the person looking at the bottom-line of missing a deadline.

The method I was primarily taught was the RUP which in a nutshell is making a broad plan incrementally more accurate until the problem becomes little manageable chunks which don’t necessarily need the attention of the starting team.

This means 4 people could do the planning but 20 could do the coding as their bit only requires them to know what goes in and what must come out. Whereas the scrum method is best suited to having those who start a project finishing it aswell as newbies brought in would take a long time to see what their doing in the grand scheme of things, this also means that the man-hours of work can not be distributed in the home stretch.

Working on my own I write the plan as I go, moulding and adapting it as I need, however working as part of a team that aren’t mind readers I find it best to create documents and drawings to show my intentions, and if someone has the same idea as me I immediately back them up to get going, not because I think I know best but because if 2 people have the same idea to solve the problem is can’t be that bad of an idea and its mostly likely simple “which is the ultimate sophistication” (Da Vinci).

Both planning frameworks have pros and cons but sometimes its best to make it up as you go along, its risky but experience and talent with a little luck can sometimes reach the finish line quicker even though they’ve actually done more work (coding) and less planning than another team that have done less coding but more planning. It’s all a balancing act between a time intensive plan making a beautiful and efficient system versus a slapped together quick’n’dirty one.

Remembering the Future

At a young age you imagine what it’ll be like when you grow up, whether you’re going to be an actor(ess), Fireman or Space Cowboy. You create an entire life in the blink of an eye, you’ve streamlined out all the boring preparations to the fun bit at the end, the goal. Unfortunately not all of these daydreams can come true, for whatever reason you get detoured and things change, for some people its major, others’ practically unnoticeable.

To believe that you could’ve achieved your dream if it weren’t for certain obstacles is easy, optimists would say that if you really apply yourself you can do anything, but some obstacles truly are unavoidable, not in the sense of fate or destiny but simply uncontrollable random events.

For those that didn’t get exactly what they dreamt, nor are happy with the outcome there is a quote that you’ll appreciate:

The most painful state of being is remembering the future, particularly one you can never have.

Søren Kierkegaard

I never had a dream of becoming anything particular, I had one of those aptitude tests and I remember the top two results to this day 1) Actor, 2) Naval Architect. I suppose a graphic designer is a good blend between them, the structure and function of architecture with the character and creativity of a Thespian. I’m fairly happy with what I do, my only regret, the future that I remember is knowing when I was younger what I would enjoy design and geared myself towards it sooner rather than playing catchup essentially being further along with my life than I am. However the slow road has its advantages…..

So even though your future never happened the fact that it could is a great source of melancholy, but still trying for it is a great source of hope. And any source of hope is a good thing, even if it comes from sadness.

What futures do you remember?

You’ve already made the choice

Pre-determination implies there is a plan for the Universe, a fixed route to get from the past to the future. In this type of Universe no accidents occur because they were all suposed to happen and although we think we are making choices we’re not, we’re just conforming to the plan.

In The Matrix amongst all the protagonist’s abilities he had the ability of foresight, this gift was only for events within the matrix and its machinery but not the real world. How does this apply to us?

In an enclosed environment if you know everything that effects an object and you know all the objects in an environment then you can predict the outcome. In an imaginary frictionless box you place a ball and give it a nudge the ball will bounce around and keep doing so. You can predict the bounces if you know what angle the ball was nudged at and thus route the path before it happens. Adding another ball just means that it’s more complicated, both paths have to be plot to the same duration and when they bounce the directions calculated. Its harder work but it is possible with enough time and thought.

The Matrix was a realtime occurring environment, so more events were occurring every second, but agents and thus the Matrix itself have limits so if you’ve got a faster processor (such as your brain) then you can run the same events faster and find the outcome sooner. However there are limitations in the Matrix and in the real world.

No-one can see beyond a choice they don’t understand, and I mean no-one.

The Oracle

What The Oracle is saying that you can only have foresight if you know what choices you (and the rest of the matrix) are going to make, if you don’t know then when running the ‘foresight version’ of the Matrix then you’ll reach an impasse and not know anything further. So for someone contending with the person that has the foresight the phrase “you’ve already made the choice, now you have to understand why you’ve made it” is quite scary because they know what you are going to do and why you did before you’ve had the choice present itself and searched all your past experiences for the answer.

Having a plan for the Universe means that it is possible to know what choices people will make before they make them so it is possible for us mortals to see into the future.

Universe and You

There are 2 types of Universe we can exist in, one where we only think we are making choices and one were we are actually making choices. The one where choice is an illusion means that there could be a map or plan to the Universe, the other anything that could happen might. If the Universe has a plan then we are obviously not privy to it, if anything can happen then what are the consequences?

A Plain Past, Present, Future Timeline
A simple timeline with us in the middle in the present.

From our perspective every action or choice will spawn a different universe, over the space of a few seconds the changes will be negligible, but over say 100 years they could be huge, for instance if a regiment of WWII soldiers went left instead of right perhaps we might have lost the war and be in German occupied Britain.

This would mean from this second onwards the timeline would look like this:

A Timeline with the line splitting infinitely from present to future
The choices be make mean that the future is no set, "There is no fate but what we make for ourselves

However if someone looks back from the future then the present looks just like our past. The reason is only 1 of the paths diverging from our present ends in the future when the observer is from. So ‘if’ time travel is possible then the future boy in the present could only get back to the future where he came from if everything happens just as it did for his past.

A Timeline with a route of possibilities from present to future
With there being so many possible futures it can be hard to get back to the one you originated from.

In a pre-determined Universe no matter when you go you can always get back when you came from. Thus it is a much simpler Universe to live in however since when has the Universe been simple?

We’ll be exploring a variety of problems based on these premises in some upcoming blog posts.