<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>cooperteam.net</title>
    <link>https://blog.cooperteam.net/</link>
    <description>Recent content on cooperteam.net</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <copyright>© This post is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.</copyright>
    <lastBuildDate>Tue, 23 Oct 2018 12:53:36 +1100</lastBuildDate>
    
	<atom:link href="https://blog.cooperteam.net/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>So what is this Wayland thing anyway?</title>
      <link>https://blog.cooperteam.net/post/2018-10-23-xorg-wayland-mir-redux/</link>
      <pubDate>Tue, 23 Oct 2018 12:53:36 +1100</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2018-10-23-xorg-wayland-mir-redux/</guid>
      <description>We’ve recently (ok, recently-ish) released Mir 1.0 with usable Wayland support. Yay!
That brought a bunch of publicity, including on LWN. Some of the comments there and elsewhere betray a misunderstanding about what Wayland is (and is not), and this still occasionally comes up in #wayland, so I’ll dust off an old blog post, polish up the rusty bits, and see if I can make this clearer for people again!</description>
    </item>
    
    <item>
      <title>Sourceful Debugging in Ubuntu</title>
      <link>https://blog.cooperteam.net/post/2018-03-13-sourceful-debugging-in-ubuntu/</link>
      <pubDate>Wed, 12 Sep 2018 12:04:45 +1100</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2018-03-13-sourceful-debugging-in-ubuntu/</guid>
      <description>At the recent Canonical sprint I mentioned that I liked getting source listings while debugging problems across project boundaries. My team-mates did not know about this and it’s not documented on the debugging program crash wiki page, so here’s some documentation for how to do it.
The Problem Recently, Bionic went through the libglvnd transition. This is the first step to the long-promised magical future where hybrid laptops have both Mesa’s libGL and NVIDIA’s libGL installed at the same time and have most programs using the integrated Intel card but power-hungry programs using the much more powerful discrete NVIDIA card.</description>
    </item>
    
    <item>
      <title>Running Mir CI Locally</title>
      <link>https://blog.cooperteam.net/post/2018-01-31-running-mir-ci-locally/</link>
      <pubDate>Thu, 08 Feb 2018 10:48:42 +1100</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2018-01-31-running-mir-ci-locally/</guid>
      <description>For the Impatient In order to run Mir CI locally, you need:
A version of spread with various fixes, such as can be found here LXD installed To enter the Mir source directory, and run something like spread lxd:ubuntu-16.04:…:amd64   A Fuller Exposition Background For Mir we use Travis CI. We want to be sure we can build on a bunch of different systems - currently: Ubuntu 16.04, Ubuntu 17.</description>
    </item>
    
    <item>
      <title>2017 11 10 ASUS AC88 WiFi on Linux</title>
      <link>https://blog.cooperteam.net/post/2017-11-10-asus-ac88-wifi-on-linux/</link>
      <pubDate>Fri, 10 Nov 2017 06:29:43 +1100</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2017-11-10-asus-ac88-wifi-on-linux/</guid>
      <description>Being for the benefit of those-who-Google In summary With a firmware extracted from their router and the 4.13 kernel, the Asus PCE-AC88 WiFi card works well under Ubuntu.
 The story so far… Because I’m an inveterate tinkerer I’ve got a server box at home. Because consumer WiFi routers are an astounding collection of out of date software necessarily exposed to the Internet at large I’ve been considering folding routing duties into my server box.</description>
    </item>
    
    <item>
      <title>Blockchain Blockchain Blockchain Blockchain</title>
      <link>https://blog.cooperteam.net/post/2017-10-29-blockchain-blockchain-blockchain-blockchain/</link>
      <pubDate>Sun, 29 Oct 2017 08:59:41 +1100</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2017-10-29-blockchain-blockchain-blockchain-blockchain/</guid>
      <description>In which I remember that I have a blog and can host Opinions on it. This take recently scrolled across my feed:
An excellent guide to the state of cryptocurrencies, their strengths, and their weaknesses (hint: bubble warning): https://t.co/2mjCbumI9k
&amp;mdash; Charlie Stross (@cstross) October 17, 2017  The post is surprisingly restrained for someone working at a blockchain-adjacent startup. I think it’s still wildly optimistic.
 Firstly, and least importantly, decentralised applications are already widespread.</description>
    </item>
    
    <item>
      <title>GPG Key Transition</title>
      <link>https://blog.cooperteam.net/post/2017-09-03-key-transition/</link>
      <pubDate>Sun, 03 Sep 2017 17:48:26 +1000</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2017-09-03-key-transition/</guid>
      <description>As an Ubuntu Core Dev, my GPG key effectively has root privileges on millions of physical machines and a very substantial number1 of public cloud instances. Although there are safeguards in place - I’m notified by email of any uploads signed by my key, and all uploads to stable releases get a layer of manual review - I’m still aware that my key is a valuable target.
I also need access to my key to get any uploads done, which means I need to have access to my key wherever I’m working.</description>
    </item>
    
    <item>
      <title>Mathematics education</title>
      <link>https://blog.cooperteam.net/2013/09/22/mathematics-education/</link>
      <pubDate>Sun, 22 Sep 2013 14:52:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/09/22/mathematics-education/</guid>
      <description>In response to&amp;nbsp;Jonathan Lange&amp;nbsp;poking me with Lockheart&#39;s Lament. It seems that I haven&#39;t addressed that in any public space yet. We looked at this essay in passing in the mathematics portion of my teaching degree. I agree with some of it. Parts of it match my understanding of the Australian mathematics curricula and teaching practice, parts of it don&#39;t; these parts may match American curricula and praxis, but I can&#39;t speak to that.</description>
    </item>
    
    <item>
      <title>XMir Performance</title>
      <link>https://blog.cooperteam.net/2013/07/15/xmir-performance/</link>
      <pubDate>Mon, 15 Jul 2013 09:31:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/07/15/xmir-performance/</guid>
      <description>Or: Why XMir is slower than X, and how we&#39;ll fix it We&#39;ve had a bunch of testing of XMir now; plenty of bugs, and plenty of missing functionality. One of the bugs that people have noticed is a 10-20% performance drop over raw X. This is really several bits of missing functionality - we&#39;re doing a lot more work than we need to be. Oddly enough, people have also been mentioning that it feels &#34;</description>
    </item>
    
    <item>
      <title>Artistic differences</title>
      <link>https://blog.cooperteam.net/2013/03/18/artistic-differences/</link>
      <pubDate>Mon, 18 Mar 2013 21:27:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/03/18/artistic-differences/</guid>
      <description>The latest entry in my critically acclaimed series on Mir and Wayland! Wayland, Mir, and X - different projects Apart from the architectural differences between them, which I&#39;ve covered previously, Mir and Wayland also have quite different project goals. Since a number of people seem to be confused as to what Wayland actually is - and that&#39;s not unreasonable, because it&#39;s a bit complicated - I&#39;ll give a run-down as to what all these various projects are and aim to do, throwing in X11 as a reference point.</description>
    </item>
    
    <item>
      <title>Server Allocated Buffers in Mir</title>
      <link>https://blog.cooperteam.net/2013/03/14/server-allocated-buffers-in-mir/</link>
      <pubDate>Thu, 14 Mar 2013 21:40:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/03/14/server-allocated-buffers-in-mir/</guid>
      <description>…Or possibly server owned buffers One of the significant differences in design between Mir and Wayland compositors¹ is the buffer allocation strategy.
Wayland favours a client-allocated strategy. In this, the client code asks the graphics driver for a buffer to render to, and then renders to it. Once it&#39;s done rendering it gives a handle² to this buffer to the Wayland compositor, which merrily goes about its job of actually displaying it to the screen.</description>
    </item>
    
    <item>
      <title>Mir and YOU!</title>
      <link>https://blog.cooperteam.net/2013/03/13/mir-and-you/</link>
      <pubDate>Wed, 13 Mar 2013 13:03:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/03/13/mir-and-you/</guid>
      <description>This is still based on my series&amp;nbsp;of&amp;nbsp;G+&amp;nbsp;posts
But Chris! I don&#39;t care about Unity. What does Mir mean for me?
The two common concerns I&#39;ve seen on my G+ comment stream are:

With Canonical focusing on Mir rather than Wayland, what does this mean for GNOME/Kubuntu/Lubuntu? What about Mint?
Does this harm other distros by fragmenting the Linux driver space?
What does this mean for GNOME/Kubuntu/etc?
The short answer, for the short-to-mid-term is: not much.</description>
    </item>
    
    <item>
      <title>For posterity</title>
      <link>https://blog.cooperteam.net/2013/03/12/for-posterity/</link>
      <pubDate>Tue, 12 Mar 2013 14:32:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2013/03/12/for-posterity/</guid>
      <description>This is based on my series of G+ posts
Standing on the shoulders of giantsWe&#39;ve recently gone public (yay!) with the Mir project that we&#39;ve been working on for some months now.
It&#39;s been a bit rockier than I&#39;d hoped (boo!). Particularly, we offended people with incorrect information the wiki page&amp;nbsp;we wanted to direct the inevitable questions to.
I had proof-read this, and didn&#39;t notice it - I&#39;m familiar with Wayland, so even with “X&#39;s input has poor security” and “Wayland&#39;s input protocol may duplicate some of the problems of X” juxtaposed I didn&#39;t make the connection.</description>
    </item>
    
    <item>
      <title>A grab-bag of annoyance</title>
      <link>https://blog.cooperteam.net/2009/05/12/grab-bag-of-annoyance/</link>
      <pubDate>Tue, 12 May 2009 16:20:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2009/05/12/grab-bag-of-annoyance/</guid>
      <description>I&#39;ve been meaning to write more, or indeed at all, on this blog. In the interests of making this easier, I&#39;ll try to ease my way in with a bit of a gripe post. Always easier! So this will be deliberately more extreme than my actual views. With that said...
The concept of &#34;definition&#34;
Why does it seem that education academics find this so difficult? This morning&#39;s 5500 lecture featured a slide titled &#34;</description>
    </item>
    
    <item>
      <title></title>
      <link>https://blog.cooperteam.net/2008/10/11/will-to-macros-excellent-maptool-full/</link>
      <pubDate>Sat, 11 Oct 2008 16:26:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2008/10/11/will-to-macros-excellent-maptool-full/</guid>
      <description>The Will to Macros
The excellent MapTool full of useful features. One of which is the ability to associate macros with tokens - particularly useful it 4E D&amp;amp;D, since the maximum number of different attacks a character can have is less than 10.

Sadly, the documentation is somewhat sparse. Let&#39;s remedy that, with a worked example: writing Graham Tom&#39;s basic attack macro.

So, at its simplest, a basic attack is d20 + Str modifier + 1/2 level + proficiency vs AC, with [W] + Str mod damage.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://blog.cooperteam.net/2008/09/14/adventures-in-future-upstream/</link>
      <pubDate>Sun, 14 Sep 2008 21:06:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2008/09/14/adventures-in-future-upstream/</guid>
      <description>Adventures in future upstream nightmares
I clearly need to move &#34;Write a &#39;How to be a good upstream&#39; Ubuntu wiki page&#34; closer to the top of my TODO list.

This piece of wrongness seen in #ubuntu-motu:

(20.24.31| screennam)) folks, I am sent here &#39;cos I have a bit of software to release under a modified gpl

(20.24.53| screennam)) and I guess I&#39;ve not done this before so I&#39;ll need some advice on making it publishable</description>
    </item>
    
    <item>
      <title>Agricultre, Neptune, Commerce, Cyclops</title>
      <link>https://blog.cooperteam.net/2007/10/18/agricultre-neptune-commerce-cyclops/</link>
      <pubDate>Thu, 18 Oct 2007 18:51:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2007/10/18/agricultre-neptune-commerce-cyclops/</guid>
      <description>My friend Bice came up to Sydney for the first time at the beginning of this week in order to burn off some of his annual leave. He&#39;s so lazy that he hadn&#39;t bothered organising any leave for the three years he&#39;s been with his company. Habits are easy to fall into and hard to break - I doubt I&#39;d do much differently.
Speaking of which, I have a habit of accumulating TODO items and insufficient time management to do anything about it.</description>
    </item>
    
    <item>
      <title>My heart is elsewhere</title>
      <link>https://blog.cooperteam.net/2007/07/08/my-heart-is-elsewhere/</link>
      <pubDate>Sun, 08 Jul 2007 22:48:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2007/07/08/my-heart-is-elsewhere/</guid>
      <description>Sam&#39;s gone off to a materials science conference, where she will be presenting some of her work. This means that she&#39;s not here. Somehow, a couple of years ago this wouldn&#39;t have mattered. Wow.
Before she left, I tried to update her Windows XP laptop. I&#39;d forgotten how strange windows is. I needed to install three install programs before I could actually install any updates.</description>
    </item>
    
    <item>
      <title>The importance of micro-optimisations</title>
      <link>https://blog.cooperteam.net/2007/07/06/importance-of-micro-optimisations/</link>
      <pubDate>Fri, 06 Jul 2007 18:12:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2007/07/06/importance-of-micro-optimisations/</guid>
      <description>Sam and I bought some wardrobes and a desk from a post-doc who&#39;s moving off to England to take up a position as lecturer. This is good: no longer will our clothes horse have to do double duty as our entire clothes storage space. The bad is, of course, that we needed to get the furniture home ourselves.
Now, getting a removalist/furniture taxi would&#39;ve cost about $140. Hiring a ute for the day, cost $69.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://blog.cooperteam.net/2007/07/05/so-on-friday-sam-and-i-went-to-see-new/</link>
      <pubDate>Thu, 05 Jul 2007 20:22:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/2007/07/05/so-on-friday-sam-and-i-went-to-see-new/</guid>
      <description>So, on Friday Sam and I went to see the new Transformers movie with SpockSoc. And it was good. Who&#39;d have thought that battles between huge, city destroying robots could be so cinematic?
I&#39;m learning dvorak, now that I&#39;ve got a lappy that I can move the keys around on. Except, curiously, for the &#39;b&#39; key, which is different to every other key on the keyboard. I&#39;m now at that awkward phase where my fingers kind of know where they&#39;re meant to go, just as long as I don&#39;t think too hard about it :)</description>
    </item>
    
    <item>
      <title></title>
      <link>https://blog.cooperteam.net/post/2018-03-13-gdb-output/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://blog.cooperteam.net/post/2018-03-13-gdb-output/</guid>
      <description>┌──../../../src/EGL/libegl.c─────────────────────────────────────────────────────────────────────────┐ │153 { │ │154 if (_eglPointerIsDereferencable(ptr)) │ │155 return *((void **)ptr); │ │156 return NULL; │ │157 } │ │158 │ │159 static EGLBoolean IsGbmDisplay(void *native_display) │ │160 { │ │161 void *first_pointer = SafeDereference(native_display); │ │162 Dl_info info; │ │163 │ │164 if (dladdr(first_pointer, &amp;amp;info) == 0) { │ │165 return EGL_FALSE; │ │166 } │ │167 │ &amp;gt;│168 return !strcmp(info.dli_sname, &amp;quot;gbm_create_device&amp;quot;); │ │169 } │ │170 │ │171 static EGLBoolean IsX11Display(void *dpy) │ │172 { │ │173 void *alloc; │ │174 void *handle; │ │175 void *XAllocID = NULL; │ │176 │ │177 alloc = SafeDereference(&amp;amp;((_XPrivDisplay)dpy)-&amp;gt;resource_alloc); │ │178 if (alloc == NULL) { │ │179 return EGL_FALSE; │ │180 } │ │181 │ │182 handle = dlopen(&amp;quot;libX11.</description>
    </item>
    
  </channel>
</rss>