Whether you share it or not, documenting and recording your process as you go along has its own rewards: You’ll start to see the work you’re doing more clearly and feel like you’re making progress. Austin Kleon ‘Show Your Work!’

The team I am a part of was recently asked if there was any work that we could possibly automate to save time and effort. Leaving aside the strange question of asking the boiling frog how the boiling process might be sped up, I was left thinking about the limits of automation when what is trying to be automated is not always straight-forward and often involves contextual knowledge. My suggestion in response was not to automate the task, but possibly automate the process.

Ever since I have stepped into my new role in the technical team, I have made a conscious effort to capture everything that I have learnt and store it in a canonical space as one of the issues I had early on was that it was too difficult to find anything. This then allows me to produce repeatable processes. (In some respects I imagine that organising information in this manner actually makes it easier for an AI assistant to support?)

In addition to automating the day-to-day, I recently built out a spreadsheet to help with a particular task of cleaning up duplicate records across the database. Given a list of hundreds of records to review, I felt that saving any time and effort was going to make a difference. My thought was to create a series of declare statements to use to query the database, then copy the raw data, review it, create tasks for the relevant teams and produce a summary of the records changed and those that remained the same.

Doubling Down on the Declare

One of the issues I initially found when producing my query was updating all the variables each time. It therefore occurred to me that rather than changing the names and various IDs each time, which was always fiddly and prone to error, I could create a series of declare statements that I updated with the SQL statement each time. This allowed me to leave the rest of the query the same:

="
DECLARE @Sur1 VARCHAR(30) = '"&D2&"'
DECLARE @Sur2 VARCHAR(30) = 'SUR2'
DECLARE @Pre1 VARCHAR(30) = '"&E2&"'
DECLARE @Pre2 VARCHAR(30) = 'PRE2'
DECLARE @Login1 VARCHAR(30) = '"&H2&"'
DECLARE @Login2 VARCHAR(30) = 'CECVIDS\UPN2'
DECLARE @Login3 VARCHAR(30) = 'CECVIDS\UPN3'
DECLARE @CNUM1 VARCHAR(15) = 'CX'
DECLARE @CNUM2 VARCHAR(15) = 'CX'
DECLARE @CNUM3 VARCHAR(15) = 'CX'"

In addition to this, I stripped out any additional information that was included within a text string of possible information and had this represented on unique lines after the initial list:

--"&IFNA(JOIN(CHAR(10)&"--",ARRAYFORMULA(LEFT(QUERY(TRIM(MID(SUBSTITUTE(J2, ":", REPT(" ", LEN(J2))), LEN(J2)*ROW(INDIRECT("1:"&LEN(J2)))-LEN(J2)+1, LEN(J2))),"SELECT * WHERE Col1 LIKE 'C%'"),16))))&""

The output then looks something like this:

--"
DECLARE @Sur1 VARCHAR(30) = 'Davis'
DECLARE @Sur2 VARCHAR(30) = 'SUR2'
DECLARE @Pre1 VARCHAR(30) = 'Aaron'
DECLARE @Pre2 VARCHAR(30) = 'PRE2'
DECLARE @Login1 VARCHAR(30) = 'CECVIDS\01234567'
DECLARE @Login2 VARCHAR(30) = 'CECVIDS\UPN2'
DECLARE @Login3 VARCHAR(30) = 'CECVIDS\UPN3'
DECLARE @CNUM1 VARCHAR(15) = 'C0000001'
DECLARE @CNUM2 VARCHAR(15) = 'CX'
DECLARE @CNUM3 VARCHAR(15) = 'CX'
--CECVIDS\30000001
--C1000001"

I commented the additional information out so that I could use it if required or simply run the updated script it was. It also meant that I did not have to delete the quotations at the start and end that come across when copying from Google Sheets every time. I did tinker with how I could get the additional logins and numbers to prepopulate within the declare statement, but hit a wall as the number of additional values was not consistent.

Streamlining the Analysis and Fix

Once I had all the records in the system, I then had to organise them into those to be retained and those to be updated. The first step was to create a conditional formulas using the following custom formula that quickly highlighted possible duplicate records:

=COUNTIFS(L:L, L1, L:L, "<>BirthDate")

This allowed me to then reorder the list and review the rest of the details. Once I had done this, I then created a summary of the data.
Often I create a config tab where I keep tab where I create various formulas that I can refer to. This is particular important when using variable NAMED RANGES. As I wanted to make this spreadsheet somewhat self-contained, I decided to just use the first row of the sheet, which I then hid. This included a summary of the different community names in a single cell:

=LEFT(JOIN("/",UNIQUE(QUERY(F2:F,"SELECT F WHERE NOT F = 'NameExternal'"))),LEN(JOIN("/",UNIQUE(QUERY(F2:F,"SELECT F WHERE NOT F = 'NameExternal'"))))-1)


A summary of staff numbers in a single cell:

=IFNA(JOIN(",",UNIQUE(QUERY(G2:G,"SELECT G WHERE G LIKE 'C%' ORDER BY G ASC"))))


And a summary of login records in a cell

IFNA(JOIN(", ",UNIQUE(QUERY(H2:H,"SELECT H WHERE H LIKE 'CEC%'"))))

Each was given a Named Range that could be easily referred to in other formulas.

Initially, I created a formula which combined these different attributes, but I realised I then had to explain what sort of duplicate it was. Overall, there are four types of duplicate records:

  1. User with multiple staff numbers and login records
  2. User with multiple login records
  3. User with multiple staff numbers
  4. User with multiple community records

To accommodate these differences, I created an formula using the named ranges to combine the IF and AND formulas:

=IF( AND( IFNA(COUNTUNIQUE(QUERY(G2:G,"SELECT G WHERE G LIKE 'C%' ORDER BY G ASC")))>1, IFNA(COUNTUNIQUE(QUERY(H2:H,"SELECT H WHERE H LIKE 'CEC%' ORDER BY H")))>1), F1&" has multiple staff numbers: "&G1&" and multiple login records: "&SUBSTITUTE(H1,"IDS\",""),
IF(AND(IFNA(COUNTUNIQUE(QUERY(G2:G,"SELECT G WHERE G LIKE 'C%' ORDER BY G ASC")))=1, IFNA(COUNTUNIQUE(QUERY(H2:H,"SELECT H WHERE H LIKE 'CEC%' ORDER BY H")))>1), F1&" ( "&G1&" ) has multiple login records: "&SUBSTITUTE(H1,"IDS\",""),
IF(AND(IFNA(COUNTUNIQUE(QUERY(G2:G,"SELECT G WHERE G LIKE 'C%' ORDER BY G ASC")))=1, IFNA(COUNTUNIQUE(QUERY(H2:H,"SELECT H WHERE H LIKE 'CEC%' ORDER BY H")))=1), F1&" ( "&G1&" / logins: "&SUBSTITUTE(H1,"IDS\","")&") has duplicate community records",
IF(AND(IFNA(COUNTUNIQUE(QUERY(G2:G,"SELECT G WHERE G LIKE 'C%' ORDER BY G ASC")))>1, IFNA(COUNTUNIQUE(QUERY(H2:H,"SELECT H WHERE H LIKE 'CECV%' ORDER BY H")))=1), F1&" logins: "&SUBSTITUTE(H1,"IDS\"," ")&" has multiple staff numbers: "&G1&"",FALSE))))

Using the IF and AND combination allowed me to quickly and easily produce a summary of the issue in one sentence to raise in our incident management system.

In addition to this, I created a SWITCH formula to provide the server listener name, as opposed to the IP address provided in the data export:

=IFNA(SWITCH(B2:B,
"IP Address 1","Listener Name 1",
"IP Address 2","Listener Name 2",
"IP Address 3","Listener Name 3",
"IP Address 4","Listener Name 4",
"IP Address 5","Listener Name 5"))

Summarising the Changes

In addition to the summary of issue, I also created a summary of changes that I could easily copy and paste into the incident notes once I had cleaned up the various duplicates:

={"","","","","","";
"Record(s) updated / merged:","","","","","";
"","","","","","";
SORT(Indirect(Table1));
"","","","","","";
"Record(s) retained:","","","","","";
"","","","","","";
SORT(Indirect(Table2))}

As the number of records varied, I created a NAMED RANGE for records updated / merged and records retained and used the INDIRECT formula to refer to them.

The formula used for Table1 was:

="C2:H"&MATCH("Database Name", Indirect(CThreeC), 0) + ROW(INDIRECT(CThree)) - 2

While the formula used for Table2 was:

=ADDRESS(MATCH("Database Name", INDIRECT(CThreeC), 0) + ROW(INDIRECT(CThree))-1, COLUMN(INDIRECT(CThree)))&":H"

As I was continually moving and deleting rows around in the spreadsheet, I found that it kept on breaking these named ranges, so that is why I created two further NAMED RANGES.

This was formula used for CThree:

="$C$3"

And this was formula used for CThreeC:

="$C$3:$C"

Again, all this ‘magic‘ was hidden in the top row of the spreadsheet.

An example of the spreadsheet with the various formulas can be found here.


There has been a lot spoken at my workplace lately about what it means to be proud. Personally, fixing 250+ duplicate records is not necessarily something I am ‘proud’ of or excited by, but I am proud of my ability to improve processes and identify ways in which my actions can make it easier for others to do their job. The challenge I often have is being able to hand over such solutions to others. Most prefer their own way of working, even if that means complaining that they do not have time for this or that. I feel that the issue is finding the right balance between improving a process and creating more work.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Surely in a high-performance sport being both ruthless and caring can co-exist. Perhaps it should be about being relentless in the pursuit of improvement rather than being ruthless. Joel Selwood ‘All In’

I must admit, I am often a little circumspect about sporting biographies. I think that it has got to be about more than just the game. I read Eddie Betts’s The Boy from Boomerang Crescent as I was interested in his journey, similarly I was interested in reading All In by Joel Selwood as much to find out more about the person off the field, especially after watching him pull Sam Moorfoot on the ground after the 2022 Grand Final and his retirement media conference.

There are some biographies which break headlines with ‘the truth’ to controversial circumstances, for Betts’ a lot was made about the pre-season camp where players where challenged on highly personal aspects of their past. All In is not really one of those books. Maybe that is because Selwood does not have such events in his life, but it feels more like a conscious choice to only focus on the positives. Although he tries to tell his side of the story around such things as head high tackles and free kicks

 It didn’t take me long to recognise I could gain an advantage over my opposition by exploiting the difficult skill of tackling. And, in my opinion, tackling is the worst executed skill in football. That isn’t because players aren’t good at tackling. It’s just difficult to run 12 or 15 kilometres in a game and also execute such a technical skill when an opponent, with the whole ground to work with, is carrying the ball and running quickly at you or away from you. I identified this as a real weakness in our game and took advantage of that. I prided myself on knowing the rule book better than most and I knew exactly what the umpires were expected to adjudicate when it came to head-high contact. As a competitive professional, knowing every angle mattered.

Source: All In by Joel Selwood

As well as recounting some silly behaviours, such as covering the teammate’s cars with sausage or taking a short cut across St Mary’s in a car race home, in general the book is simply about capturing his life without controversy. As he shares in the introduction, this is a book written as much for his son, Joey, so that he can know about his life and shared with everyone else in the process.

Interestingly, All In often felt as much a summary of the football team as it is about Selwood himself. Whether it be how the team performed or the changes around the club. I was left thinking that this was as much a reflection of the sort of person and leader Selwood was and is. It often felt like the book was about others as much as it was about himself. Every page seemed to mention someone or thank someone else, and this always felt intentional. For example, he brings up Jordan Clark a number of times, a high draft pick whose decision to leave was surrounded with innuendo. The book felt like a continuation of the role of captain, where he was forever balancing all the different roles and relationships. (On a side note, I am reminded here of Austin Kleon’s post about the complexity of going from one child to two, I shutter to think how many relationships Selwood is balancing in such an exercise.)

In regards to style, I fell it is a book that really focuses more on narrative and timelines. There are times when it would be interesting to have more detail into some situations, but this would make it a different book I guess. While I thought that the choice to have his wife, Britt, tell much of the story of their experience with IVF was important. It could have been told through his voice, however, as Britt captures, so much of IVF is left up to the female and it would not have been possible to honestly recount so many events from the male perspective. It also helped capture a world off the field.

Selwood is always upfront about making the most of his talent by being “all in”. (Ironically, maybe this is actually his talent?) However, I was left wondering about the sliding door moments in his life, those variables which helped make him who is was and is. Whether it be his father’s interest in running, his parent’s decision to not send him to Caulfield Grammar, the recommendation from Graeme Allan who was at Brisbane where his brother was playing to see a particular specialist about his knee, the luck of landing at a club in its prime, I am always left thinking how much chance and others in general play out in these sorts of situations.

I am glad I read the book and feel that there is probably a lot to the gleaned around leadership, especially after his experience with Leading Teams.

‘Ruthless’ was appropriate as a value at that time but around 2012, as the playing group transitioned, it was not so important. By then, we needed to do things differently, to play to the strengths of a new crop of players, to establish a framework but to let players be themselves within that framework. Surely in a high-performance sport being both ruthless and caring can co-exist. Perhaps it should be about being relentless in the pursuit of improvement rather than being ruthless.

Source: All In by Joel Selwood

The game also taught me that rigid preparation was not always possible. What was possible was that I could switch on as soon as I dragged the jumper over my head. Eventually the assistants would refer to me as Sir William Wallace, the hero of the Mel Gibson film Braveheart, when they saw me put on the jumper and joke whether I would be able to go over the hill one more time. They knew that was my cue to put all aside and concentrate on the game. It became a habit for me. They thought that trait was remarkable.

Source: All In by Joel Selwood

My intent was never in question but when you carry that view of leadership – that success was your responsibility – the danger is that when something goes wrong, you look to blame someone else. If you are not careful you can become a cop, rather than a teammate, and forget that the group that had won premierships had changed and other methods might be needed to give different – and new – individuals a prod.

Source: All In by Joel Selwood

Some people can work themselves up way too much. They think you need to do this, or you need to read that. I keep it simple: what about just generally being half a decent person? Have your eye out a little bit for everyone and make sure you have a bit of fun along the way. That was the basis of everything I strived to do.

Source: All In by Joel Selwood

I also enjoyed James Saunders’ reading of the book, which I found via Bolinda Audio’s BorrowBox app.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Kind of poetic, isn’t it? The act of speaking to an art-AI feels like a communication word-game — like playing Charades or Taboo, where you have to trigger your collaborator to produce the right result by talking around a subject. Except in this case, the goal is to find the correct incantation that awakens the spirits residing within yonder eldritch cauldron of vectors, and summons them to do your bidding. Clive Thompson “The Psychological Weirdness of Prompt Engineering”

I must admit, I have been somewhat circumspect to what impact applications like ChatGPT would have on my work and life. I am not going to deny the potential, but there are too many stories that make me wonder, such as John Johnston’s chat with Bing. Really, I have had enough trouble handing over some of my work to colleagues, I therefore cannot see my work disappearing anytime soon, even if I were to somehow hand it over to a chatbox.

However, one area that I have found it interesting to explore is the ability to learn with the support of a chatbot. This is a use that I have seen come up in my feed. For example, Ben Collins talks about using AI tools to create formulas:

The AI tools can create formulas for you too.

ChatGPT and Bard generally give correct answers for simple formulas but it’s hit-and-miss with more complex formula asks.

Again, it pays to be as specific as possible with your prompt.

Source: What AI Can Do For You As A Google Sheets User. Is The Hype Justified? by Ben Collins

While Doug Belshaw has reflected on using AI tools to improve code:

I’ll not go into too much detail, but I wanted to replicate the style of my main archives page which is generated using the Simple Yearly Archive plugin. I duplicated archive.php in my themes folder, renamed it category.php and then tinkered around with it. ChatGPT was excellent at giving me the code I needed to do the things I wanted, including for the category RSS feed.

Source: Tinkering with WordPress category archive pages by Doug Belshaw

Through my work Microsoft account, I discovered I have access to Bing’s Co-Pilot chatbot based on OpenAI’s GPT-4. I have therefore been tinkering with this a bit. In particular, I have been using this when I have a question about creating a formula or script. For example, today I asked for a PowerShell script to change the naming format of a group of files. I began by asking:

How do I use PowerShell to swap around parts of multiple file names each split with an “”? For example, the current format is 12343_FirstName_Surname.pdf but I want it to be 12343_Surname_FirstName.pdf

Bing came back with a formula that spoke about moving around the different parts split into an array and move the elements around, however it did not account for the ‘.pdf’ ending. So I asked the following:

Using PowerShell, How do I split a file name into an array using _, but exclude the ending .pdf

It then added the missing lines associated with removing the .pdf ending at the start of the process and then adding it back at the end.

See the final script below.

# Set the current directory
$directory = "xxx"

# Get all files in the directory
$files = Get-ChildItem -Path $directory

# Loop through each file
foreach ($file in $files) {

    # Remove the .pdf extension from the file name
    $fileNameWithoutExtension = $file.Name.Substring(0, $file.Name.Length - 4)

    # Split the file name into an array using the underscore as a delimiter
    $fileParts = $fileNameWithoutExtension.Split("_")

    # Swap the first and last elements of the array
    $fileParts[0], $fileParts[1], $fileParts[2] = $fileParts[2], $fileParts[0], $fileParts[1]

    # Join the array back into a string using the underscore as a delimiter
    $newFileName = $fileParts -join "_"

    # Add the file extension to the new file name
    $newFileName = "$newFileName.pdf"

    # Rename the file with the new file name
    Rename-Item -Path $file.FullName -NewName $newFileName
}

What I have found is that although I often get an answer, it is not always the final answer or correct for that matter. This was the case when after I recently exported all my links from Diigo and asked Bing for a Google Sheets formula to check which URLs sent back a 404 and which didn’t. Co-Pilot gave me back the following formula:

=IF(HTTPResponse(A1)=404,"404 Error","No Error")

I tried this in Google Sheets only to get the error:

Unknown function: ‘HTTPResponse’.

I then asked Bing, “What is the HTTPResponse function in Google Sheets?” To which Bing responded that there was no function ‘HTTPResponse’ built-in, but that I could use UrlFetchApp.fetch in Google Apps Script to create a custom function. It then also provided links to a number of sources which I followed, finding Adham El Banhawy’s guide the most helpful. Ironically, I then got an error in trying to run the custom script, which I raised in Co-Pilot, and was given a fix.

function getStatusCode(url) {
  if (url === undefined || url === null) {
    return null;
  }

  var url_trimmed = url.trim();
  // Check if script cache has a cached status code for the given url
  var cache = CacheService.getScriptCache();
  var result = cache.get(url_trimmed);

  // If value is not in cache/or cache is expired fetch a new request to the url
  if (!result) {

    var options = {
      'muteHttpExceptions': true,
      'followRedirects': false
    };
    var response = UrlFetchApp.fetch(url_trimmed, options);
    var responseCode = response.getResponseCode();

    // Store the response code for the url in script cache for subsequent retrievals
    cache.put(url_trimmed, responseCode, 21600); // cache maximum storage duration is 6 hours
    result = responseCode;
  }

  return result;
}

In each of my experiences of CoPilot, I have had to make adjustments to the code provided. A part of this is actually learning what is happening. However, this may well be the questions that I asked:

  • talk to it as if it were a person
  • set the stage and provide context
  • have the AI assume an identity or profession
  • iterate with multiple attempts
  • keep it on track
  • specify output format
  • explicit constraints on responses
Source: How to write better ChatGPT prompts for the best generative AI results – David Gewirtz, ZDNet, Oct 12, 2023 Commentary by Stephen Downes

Or it may well be the trial and error nature of coding. The thought that I am left with is a comment a few months back that questioned if we have to learn what prompts to use with AI tools, how intelligent are they? I With this in mind, for me I feel that AI tools are useful as an aide, but I am circumspect about using them as the answer. I guess time will tell.

As always, comments and webmentions welcome.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Highly productive individuals, teams, and organisations don’t get to that level merely by accident. It happens through hard work on process which, in turn, leads to consistently-great outcomes. Doug Belshaw ‘Trello Kanban’

This year I was seconded to help in the technical team. In some ways, I am doing much of the same work as before in responding to issues pushed to us, whether it be debugging problems and supporting schools. One change though has been a focus on the technical changes and enhancements. As a part of this, I was asked to complete Atlassian’s online courses associated with the use of Jira and the agile methodology.


In 2001, a group of developers published the Manifesto for Agile Software Development. The manifesto outlines four key values associated with the agile mindset:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Source: Manifesto for Agile Software Development

In unpacking these values, Atlassian provide six tips to build an agile mindset:

  1.  Show respect for all team members
  2.  Communicate openly and clearly
  3. Look for ways to innovate
  4. Actively improve your skills
  5. Your work doesn’t have to be perfect
  6. Have a plan, but always be ready to pivot

Although there are many agile frameworks, Atlassian focuses on two in particular: Kanban and Scrum.

The Kanban framework allows teams to visualise workflows associated with work and improvement. It focuses on columns of cards, which allows all involved to easily see the progression of various tasks. (For example, Doug Belshaw introduces Kanban with three columns: To do, Doing, and Done.) Associated with each card, there are details, checklists, attachments, labels, work in progress (WIP) and collaboration through comments. I have discussed the use of Kanban boards in the past in regards to Trello.

Scrum is about iterative delivery of batched improvements. Groups of issues are organised into sprints with a clear focus and a set number of WIP points. Unlike Kanban boards, sprints are time-based, with future work added to a backlog. In addition to the boards, there are certain structures and processes. This includes regular meetings focusing on what has been completed, what needs to be completed and any obstacles, a review of accomplishments, and a retrospective that focuses on what the learnings from the sprint. Associated with the boards and meetings, there are roles central to the cycle, including the product owner and the scrum master. The product owner is in charge of recording requirements and identifying priorities for the business, while the scrum master acts as a coach, responsible for the performance of the team.


Personally, I had dabbled with using Kanban in my work before. I had also explored the idea of agile management in education through Richard Olsen’s Modern Learning Canvas and Simon Breakspeare’s Teaching Sprints. However, I had never dived into the world of scrum and sprints as a part of my current work. One of the reasons has been that it has not been the methodology of the teams I have worked in.

One of the interesting challenges I find with any agile approach is how it works in practice. According to Atlassian, best practice is to make the habit front and centre. This involves using Confluence for documentation and communicating everything by using the @name from the various cards. This then allows the use of various reports to improve processes and outcomes. The problem with this is that it often places other things in the periphery. If all I did was project work, it would be perfect. However, I feel like I work in a dual operating system. I manage my time between the push for enhancements and improvements, and the pull associated with everyday support. The problem is that it feels that both sides are often oblivious of the other. In regards to agile, this often creates scope creep where things are often added that occur outside of project planning.

In addition to this, it would be nice if Jira (or Atlassian) was the only place where I worked. The project I am a part of has many different signals, including email, Google Drive, OneDrive, Microsoft Teams, Google Chat and Ivanti’s HEAT. There are often times when I am not sure where I am meant to look. For me, I think that the various cross-messaging is often akin to football and a team defense where everyone plays their role producing an outcome where the whole is greater the sum of the individuals. However, when there is not buy in across the board, then the system fails.

Another interesting consideration is the structures of something like scrum. In their introduction to the topic, Chris Sims and Hillary Louise Johnson talk about the optimal size of teams:

So, how many team members should a scrum team have? The common rule of thumb is seven, plus or minus two. That is, from five to nine. Fewer team members and the team may not have enough variety of skills to do all of the work needed to complete user stories. More team members and the communication overhead starts to get excessive.

Source: Scrum: a Breathtakingly Brief and Agile Introduction by Chris Sims and Hillary Louise Johnson

I am in a team of four and this creates some confusion at times about who exactly is doing what roll.


In the end, my biggest takeaway was that agile was a mindset, a way of thinking about continual improvement and development. I was subsequently left wondering if the best methodology is one devised based on the requirements of the particular context. With this in mind, I found Eric Ries’ The Lean Startup interesting in that it offers mindsets as much as approaches.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Clay Shirkey on the need to continually rethinking our workflows

I have really been enjoying following Chris Aldrich’s exploration of note-taking, commonplace books and Zettelkasten. Whenever I read about the various ideas, I feel like I do not necessarily belong. Thinking about my practice, I never quite feel that it is deliberate enough. For example, I do not sort my book notes by colour or anything, I do not collate information using index cards to organise my thoughts and ideas, and I do not methodically reorganise my pieces. Yet, as I read about the different methods, I feel like I can see myself in there somewhere. What I wonder is whether note-taking is a constant practice or something that should evolve over time?

When I read about the various historical cases, one of the things that intrigues me are the origin stories that seem to be washed over. Did people find their particular flavour and stick to it for life? Or is it just history that provides that perspective? Aldrich himself reflects on his early experience of note-taking with index cards:

My own anecdotal experience of research and note taking with index cards dates to 1985 when, in sixth grade, I was admonished to take my notes on index cards so that I could later string them together in outline form to create a narrative.

Unlike these static stories of method, Aldrich’s personal journey seems like a case of trial and error. For me, his reflections documented in his blog tells a tale of what Angus Hervey describes as ‘holding on tightly and letting go lightly‘.

Don’t say “I’m right, and you’re obviously wrong.” Say “at this point, given all the evidence I’ve considered and having made a genuine effort to try and see if from the other side (point to some examples), the balance of the argument seems to rest on this side for these reasons, so for now that’s what I am going with. If new evidence, or a better argument comes along I am totally willing to change my mind about this, and I’ll also be pleased because it will mean I’ve gained a deeper understanding about the world.”

Aldrich always seems to be tinkering with a new process or application to work differently. As technology ebbs and evolves, he seems to work out what works and what does not. The process of coming up with the right workflow seems just as important as the workflow itself. In some ways this reminds me of Clay Shirky’s tendency towards ‘awkward new habits’.

I actually don’t want a “dream setup.” I know people who get everything in their work environment just so, but current optimization is long-term anachronism. I’m in the business of weak signal detection, so at the end of every year, I junk a lot of perfectly good habits in favor of awkward new ones.

This reflection makes me think about my own journey. Personally speaking, I have written before about my journey to being a ‘connected educator‘. However, I have always felt that focusing on people overlooks connecting through the page. With this in mind, I am taken back to a time when I used to collect clippings of reviews and readings inside books. This is a habit I inherited from my grandfather. For a time, this led to scanning documents to keep them digitally. I also kept a book of quotes. This was not really organised, more of a collection of random dots. Each of these acts could be seen as being a part of the journey to now.

In the end, just as defining digital literacies is as important as engaging with digital literacies themselves, I wonder if discussing and defining what we actually mean by concepts such as ‘commonplace book’ is just as important as the commonplace book itself?


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

The most important blog post It is on the most important blog. Yours. Seth Godin ‘The most important blog post’

Supporting our daughter at home with her learning this year was interesting. One of the challenges related to knowing where you stand and what is your roll. Early on, our daughter cared a lot, putting effort and detail into everything she did. However, as time has passed, this interest  turned to apathy. Although she looked forward to the daily online session, the rest was something of a chore.

One of the ideas the school introduced was the idea of a ‘passion project’. I found our daughter frustrated with the task of identifying deep interests and following through with them. Initially, she said she was focusing on ‘slime’. She discussed a whole range of tests she wanted to do, but it did not go anywhere with them (other than create a whole lot of slim). She then turned her attention to Minecraft. In part, I think that this was a justification for spending more time on her tablet doing things that she wanted to do.

Although I have no issue with Minecraft and have always encouraged her with this, my concern was with what she was actually doing and whether it fit the brief of her ‘passion project’. I therefore suggested that instead of having a clear outcome, she at least document her learning. She was still unconvinced. I then proposed that I would create her a blog where she could record a log of her thoughts. After explaining that she was the only one who could access the space, she was convinced.

Although she did not have a clear plan for the project, recording thoughts in a blog led to a number questions, such as how can I add video and images. This all reminded me of the power of blogging and the importance of letting people find answers for themselves, even if this means being frustrated and failing forwards along the way. As Clive Thompson posits in regards to blogging:

Children who didn’t explain their thinking performed worst. The ones who recorded their explanations did better

On a side note, it is sad to see the end of an era in regards to blogging in Victoria.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Until we call out the ridiculousness when it appears, until we recognize exactly how broken things are we may be falling into the trap of longing for nostalgia. For a past we can return to where the problems we have didn’t exist. Or, we can recognize that nostalgia is fed from exactly the dynamic that got us to this thorny moment in the first place: the denial of our broken social contract, and institutions and rituals that were performatively there, the way the debate was, but no longer providing the function that was the stated reason for their existence in the first place. Zeynep Tufekci ‘Against Nostalgia’

Responding to the presidential debate, Zeynep Tufekci draws on the work of William Fielding Ogburn to discuss the mismatch between a past we hope we can return to and the actual reality that has moved on. Debates worked in an era with little choice, however with so many other means of communicating it does not make sense.

We could, instead, have panels of journalists interrogate the candidates in separate hours, where the candidates have time to speak. The panel could consist of journalists chosen by the candidate and his opponent, with questions alternating between the friendly questions and those less friendly. The questions could be negotiated so that some of the same questions are asked of both candidates. They could be a mix of questions submitted in a town hall and questions polled among the public. The follow-ups could also alternate. And so on. Something else. Anything else.

Although different from the debates, this notion of mismatch is something that has been called out by the current crisis.

As students return to classes, there is a lot of discussion about what has changed and the dangers of snapping back into an old sense of normal. For Steven Kolber, the move to offsite learning has highlighted the opportunity for asynchronous learning.

A ‘build back better’ move would be to allow a portion of students’ load to be delivered remotely, giving teachers and students some space for variety in their schedule, and freedom from the byzantine and industrial timetable of schools.

I think that this opportunity is something pertinent both inside and outside of the classroom.

In my work in supporting schools, the move offsite has forced a rethink for how schools and staff are supported. Where in the past, there was a focus on in-person workshops, structured around particular topics. In their place we have been forced to explore other approaches. One of the consequences of this is that it has broken up sessions into support that is done at the point of need.

One of the things I have been doing for a while is following up support calls with a summary of how I saw things. Many take their own notes, but having my own set allows for cross-checking. Associated with words, I have been exploring a number of other ways to communicate and explain various points.

Annotations

The simplest way to supplement a written explanation is with an annotated image. Although it is possible to provide clear descriptions, this presumes we all share the same language. For example, here is my online course associated with Global2 which is regularly broken up with annotated images. Although in the past I used Google Drawings to create such images. These days I use SnagIt to quickly capture and create images, especially when connecting remotely using BOMGAR.

Gifs

I have taken to using GIFs to capture more complex workflows which cannot be presented in a static annotation. This was in part inspired by Jake Miller’s EduGIFs. It involves turning short screen-casts into GIFs. I have found if short enough, they can be sent by email or uploaded into a Google Doc. As with annotations, I have been using SnagIt to create these GIFs. Although I like Miller’s combination of text and image, this is not possible with SnagIt. I therefore still provide these with written instructions.

Video

One of the limitations to both images and GIFs is that often they only capture a particular part of a longer processes. Therefore, I have taken to using Captivate to record video demos this year in something of a flipped model. This has involved:

  1. Recording the video. Although research suggests that showing your face is important, I find it impedes the ability to edit the video unless you keep your face really still. If I make a mistake or am unhappy with a particular instruction, I usually just do it again while recording, knowing I can then just cut this out later.
  2. Fixing up the audio. Opening the narration in Audition, I normalise the volume and silence any unwanted noises, such as coughs, umms and words I inadvertently repeat, like ‘now’. In the past I have used Levelator and Audacity for this, however Captivate has a direct integration with Audition, which makes it easier.
  3. Trimming the video of parts not needed. This includes pauses and moments where I may be completing a task that does not need to be demonstrated. Ideally, it would be good to keep such moments in and speed them up, but I have not found a simple way of doing that with my current setup.
  4. Editing the narrative. Using the Zoom and Highlight Box functions I guide the viewer’s attention to match my instructions. This includes updating the default Highlight Box so that the background is basically blacked out.
  5. Publishing the video. Once complete, I upload the videos into Google Drive to be shared. I have been thinking about whether it would be better to load these into YouTube as unlisted to provide access to transcripts, as Mike Caulfield does with his instructional material. However, for now Google Drive works.

Much of this is captured in this video from Paul Wilson and this guide:

It needs to be noted that another influence in regards to asynchronous videos has been Ben Collins. I have written about presentations before, focusing on the importance of content, delivery and supporting materials. Lately though I have been inspired by Collins’ courses and the way in which he carves out succinct narratives and breaks-up the whole into its parts. I am sure that hours of effort have gone to getting this stage.

The challenge I have with my work is two fold: to build the capacity of users, as well as develop a sustainable support processes. In addition to using images, GIFs and video, I endeavour to use de-identified data in the images that I share, this means that if somebody else has the same request that I can easily just send them the same message and image.


So that is my new normal beyond the classroom. What has it been like for you? As always appreciate any thoughts and feedback.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

Imagine being born 2000, 1000, 500, or even 150 years ago and being shown an iPhone or a self-driving Tesla. It would surely seem like magic or witchcraft - David Truss ‘We Are Not Alone’

A colleague recently said to me, “You just go and do your magic.” It was intended as a compliment, however it left me wondering about what it means for people to think about work as ‘magic’.

Wikipedia defines magical thinking as follows:

Magical thinking, or superstitious thinking. is the belief that unrelated events are causally connected despite the absence of any plausible causal link between them, particularly as a result of supernatural effects.


Growing up, I remember being wowed watching magicians on television. However, what interested me more were the shows that unpacked the various tricks and illusions. More than slight of hand, I was interested in the steps that made such acts possible.

I guess it is often easier to wed yourself with the mystery, rather than do the heavy lifting. This is something Cory Doctorow captures in discussion of Kirby’s film Trump, QAnon and The Return of Magic:

In a world of great crisis – pandemic, climate inequality – it’s not crazy to want to feel better. For all that magical thinkers cloak themselves in “skepticism” their beliefs are grounded in feelings. Evidence is tedious and ambiguous, emotions are quick and satisfying.

For many, technology is full of magic and wonder. However, often such perceptions are produced by our willingness to give ourselves over to the narrative. As Doctorow explains in his response to Shoshana Zuboff’s book The Age of Surveillance Capitalism:

Surveillance capitalists are like stage mentalists who claim that their extraordinary insights into human behavior let them guess the word that you wrote down and folded up in your pocket but who really use shills, hidden cameras, sleight of hand, and brute-force memorization to amaze you.

Rather than handing myself over to a world of magic and mentalists, I am more interested in trying to be more informed. For me this come by asking questions, learning with others and continuing to challenge myself.  As Clive Thompson touches on in regards to coding, this often involves repetitive work done over time.

You should try to do some coding every day—at least, say, a half hour.

Why? Because this is just like learning Spanish or French: Fluency comes from constant use. To code is to speak to a computer, so you should be speaking often. Newbies often try to do big, deep dives on the weekends, but that’s too infrequent.

This repetition is not only about understanding simple processes, but also building on this to join the pieces together to how they maybe interconnected. One way of appreciating this is using the SOLO Taxonomy, a learning model that focuses on quality over quantity. It involves a  progression of understanding from the task at hand to more generalised leanings.

The model consists of five levels of understanding:

  • Pre-structural – The task is not attacked appropriately; the student hasn’t really understood the point and uses too simple a way of going about it.
  • Uni-structural – The student’s response only focuses on one relevant aspect.
  • Multi-structural – The student’s response focuses on several relevant aspects but they are treated independently and additively. Assessment of this level is primarily quantitative.
  • Relational – The different aspects have become integrated into a coherent whole. This level is what is normally meant by an adequate understanding of some topic.
  • Extended abstract – The previous integrated whole may be conceptualised at a higher level of abstraction and generalised to a new topic or area.

Doug Belshaw talks about levels of understanding in regards to moving from competencies to literacies.

In a similar vein to the SOLO taxonomy I believe there’s a continuum from skills through competencies to literacies. As individuals can abstract from specific contexts they become more literate. So, in the digital domain, being able to navigate a menu system when it’s presented to you — even if you haven’t come across that exact example before — is a part of digital literacy.

This is something I tried to get capture in my presentation at K-12 Digital Classroom Practice Conference a few years ago where I explored ways in which different Google Apps can be combined in different way to create a customised ongoing reporting solution. It was not just about Docs or Classroom, but about the activity of curating, creating, distributing and publishing.

John Philpin approaches this problem from a different angle. Responding to the question as to whether we should all learn to code, he suggests that appreciating how technology works is actually an important part of any business. This does not mean you need to have written all the code, but it does mean you have an awareness of how things work.

You wouldn’t think about running a business if you didn’t have the fundamental understanding of law and accounting, why would you assume that it is ok not to understand technology.

This touches on Douglas Rushkoff’s point about programming or being programmed.

Coming back to my work, I feel appreciating these pieces is not only helpful in understanding the ways in which technology is a system, but also the way strategic risks can be taken when approaching something new. In Black Swan, Nassim Nicholas Taleb talks about measured risks:

It is much more sound to take risks you can measure than to measure the risks you are taking.


For me this means taking risks based on prior learnings and experience. I may not have all the answers, but I think I am good at capturing particular problems at hand and with that drawing on past practice to come up with possible solutions. I am going to assume this is why people come to me with such diverse questions and quandaries.

I am not saying all this because I feel that I know and understand everything. However, I cannot help but feel that references to ‘magic’ are often attempts to cover up the hard work, sacrifice and opportunity that produce such moments. As always, comments welcome.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

I didn't have time actually means, it wasn't important enough. It wasn't a high priority, fun, distracting, profitable or urgent enough to make it to the top of the list. Seth Godin on Time

I remember reading Seth Godin’s post on time a few years ago:

“I didn’t have time” This actually means, “it wasn’t important enough.” It wasn’t a high priority, fun, distracting, profitable or urgent enough to make it to the top of the list.

This is something that really challenged me. It had me rethink my approach to things, especially social media and notifications.

This quandary came up again recently when in response to an invite from Chris Aldrich to participate in a meetup about Domain of One’s Own. Other than the logistical problem that it would be the middle of the night for me, I stated that was was never very good at such attending synchronous sessions. I explained that I much of my time spent on such tasks as IndieWeb and Domain of One’s Own is stolen. In response to this, Nate Angell asked who the time was actually stolen from?

What i meant by my throw-away comment was that time is always a balance. Whether it be work, family or chores, there is always something to chew up the time. The problem is that each aspect would be enough on its own, let alone find time for the personal stuff.’

Therefore, I have learnt to ‘steal time’ for me. This involves making the most of situations to read and respond. This is often done by doubling up when doing more menial tasks. At the moment, this means listening to podcasts or my Pocket feed in the morning as I do the chores, such as getting everyone’s breakfast ready and tidying up the kitchen. I then curate in the odd moments throughout the day. While in the hour or so when I finally stop at the end of the day I try to carve out time for my thoughts or do a bit of tinkering or creating. I have written about this workflow before and although it continues to evolve, it still remains much the same.

I must admit that although I love many aspects to working from home, one aspect I miss is the way in which my commute seemingly gave permission to stop working or doing chores. I have subsequently found myself working more than I would have if I were in an office setting. I am not implying that I am lazy in an office setting, however it provides certain structures and expectations that do not exist at home. For example, with an hour commute, I was always mindful about leaving on time to pickup my children from childcare. This is no longer an issue.

I remember reading Doug Belshaw talk about breaking up the day into different spaces, although I cannot find the reference, only this. Sadly, that is not necessarily possible where I live or in the job I do. However, it is probably something that I need to be a bit more deliberate about.

Another challenge I have being a connected educator and learner is justifying what I do in regards to my work, whether it is writing my newsletter or writing these reflections. The reality is that blogging and Domain of One’s Own is very much a passion project. Although I used blogs when I was in the classroom, sadly my current work involves supporting schools with learning management software. In saying this, I actually apply a lot of my lessons from blogging and actually cracking open the database in the work that I do. However, not everyone sees professional learning like that.

As always, thoughts and comments welcome.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.

A quote from Nassim Nicholas Taleb's book ‘Black Swans’ describing our tendency to avoid randomness

Technology offers many opportunities. The challenge is sometimes how to make the most of these. Thinking of things from a system perspective, the desire to scale is often in contrast the reality of each school context.


Todd Rose opens his book, End of Average, with a discussion of the early fighter jets and the design of the cockpit around the ‘average’ pilot. He tells the story of Gilbert Daniels, a researcher who explored this problem in the 1950’s. Daniels measured ten dimensions, including height, chest and sleeve length. What he found, once he had averaged out all the measurements, was that an average pilot does not exist.

The tendency to think in terms of the ‘average man’ is a pitfall into which many persons blunder … It is virtually impossible to find an average airman not because of any unique traits in this group but because of the great variability of bodily dimensions which is characteristic of all men.source

Rose’s book unpacks this further, but again and again he comes back to the principal;

If you want to design something for an individual, then the average is completely useless.


Lately, my work has been focused on supporting schools with reporting and assessment. The application I support is very flexible, utilising Crystal Reports to produce the final product. Usually it is set up on a school-by-school basis, however we are deploying a multi-tenanted environment. With this comes the opportunity to create a solution that can be used for each of our schools, without having to go through the rigmarole of development from scratch each time.

My work has focused on creating a template that acts as a starting template of subjects and assessment items that feeds into the Crystal Reports. This was built on-top of the standardised configuration. The thought was that this would save users time in setting up their reports. It was easier to start with something, rather than build from scratch. However, the learning that has stemmed from setting up a number of schools is that no one has used this average starting point. There is nothing wrong with the underlying configuration, but it is often easier and quicker to build from the various solutions from scratch.

My first response to this was to create a second starting point that was dependent on the style of reporting that particular school was after. Although this alleviated the challenges associated with some of the differences, this still required somebody to add and delete various elements.

This all reminded me of Nassim Nicholas Taleb’s discussion of anchoring in his book Black Swans. Anchoring is a bias used for working around unknown possibilities. It involves reducing complexity by focusing on a particular object:

A classical mental mechanism, called anchoring, seems to be at work here. You lower your anxiety about uncertainty by producing a number, then you “anchor” on it, like an object to hold on to in the middle of a vacuum.

In my case, this object was the initial setup. We have since started exploring a different approach, which instead focuses on users working with the various dimensions. The hope is to provide some constraint, but also flexibility within this, rather than assuming that all schools are alike.


This all has me thinking. Too often the conversation around technology is around efficiency – replacing work and saving time. However, my experience with supporting schools with setting up reports, timetables and attendance, and technology in general, has me feeling it often changes things. This touches on the reality that technology is a system. In saving in once spot, it often adds to another. As always, comments welcomes.


If you enjoy what you read here, feel free to sign up for my monthly newsletter to catch up on all things learning, edtech and storytelling.