This blog is 10
Mon 02 July 2018 by Jim PurbrickJust over ten years ago I set up The Creation Engine No. 2 after previously blogging on the original Linden Lab hosted Creation Engine and before that on Terra Nova. So, while I’ve been blogging for almost 14 years, 10 years of The Creation Engine No. 2 seems like a good excuse to look back at the last decade of blogging.
Behind the scenes the technology behind The Creation Engine No. 2 has changed a lot. Originally hosted as a Django site on Byteflow, I converted the blog to a static site generated by Pelican and hosted by github almost exactly 5 years ago. I wrote a post at the time detailing the move, which I finally published on its 5th birthday after rediscovering it today. Despite the big changes behind the scenes, github’s support for custom domains and Pelican’s support for RSS import meant that the only externally visible changes to The Creation Engine No. 2 were cosmetic. All the RSS feeds and links to the site were unaffected, which is great because Cool URIs don’t change.
While the technology has changed a lot, the content continues to mostly be a hack diary describing the various contributions I’ve made to projects like the EVE CREST API, nailgun, buck, infer and ReactVR. I write these posts as documentation in case I have to solve similar problems in future, but it’s also great when they’re useful to others, so I’m very happy to see that my recent set of posts about using ReactVR with Redux have been my most popular posts to date.
I don’t attend as many conferences now as I did while I was working at Linden Lab, but the various conference write up posts serve a similar purpose: reminding me about the talks and speakers I’ve seen and hopefully also pointing others to useful information. Social media is now more effective for letting people know about future events, so I rarely use The Creation Engine to announce upcoming events, but still think its a useful place to collect longform thoughts about past events and links to recordings.
One post which doesn’t fit in to the above catatories is my review of Now We Are 40 and thoughts on growing up with the web. Part of the reason I posted it here is because I could. I don’t need someone to speak for me or my generation, I can do it myself. I’m very grateful that I’ve been able to share my thoughts with the world for the last decade and very happy that a lot of people have found them useful.
Happy birthday to The Creation Engine No. 2. Here’s to the next 10.
Replicated Redux: The Movie
The recording of my recent React Europe talk about Replicated Redux is now online and I’ve written several other posts describing designing, testing and generalising the library if you would like to ...
read moreReplaying Replicated Redux
While property based tests proved to be a powerful tool for finding
and fixing problems with ReactVR
pairs,
the limitations of the simplistic clientPredictionConstistenty
mechanism remained.
It’s easy to think of applications where one order of a sequence of actions is valid, but another order is invalid. Imagine an ...
read moreBuilding Safety in to Social VR
Last year I hosted a panel on creating a safe environment for people in VR with Tony Sheng and Darshan Shankar at OC3. I commented at the time that the discussion reminded me of the story of LambdaMOO becoming a self-governing community told by Julian Dibbell in My Tiny Life ...
read moreTesting Replicated Redux
Opening a couple of browser windows and clicking around was more than sufficient for testing the initial version of ReactVR pairs. Implementing a simple middleware to log actions took advantage of the Redux approach of reifying events to allow a glance at the console to reveal precisely which sequence of ...
read moreReactVR Redux Revisited
There were a couple of aspects of my previous experiments building networked ReactVR experiences with Redux that were unsatisfactory: there wasn’t a clean separation between the application logic and network code and, while the example exploited idempotency to reduce latency for some actions, actions which could generate conflicts used ...
read moreGeneration JPod
I’ve just got back from Kaş where I spent a lovely few days celebrating Pinar and Simon’s wedding and while there spent a few hours reading Now We Are 40: a thoughtful and entertaining look at everything from house music to house prices from the perspective of Generation ...
read more2² Decades
Several years ago when we were in 100 robots together, Max was celebrating his 40th birthday. When I said that mine would be in 2017, it felt like an impossibly far future date, but, after what feels like the blink of an eye, here we are.
Along with many other ...
read moreVR Redux
Mike and I have been talking about how to easily build simple networked social applications with ReactVR for a while, so I spent some time hacking over the Christmas break to see if I could build a ReactVR version of the pairs game in Oculus Rooms. Pairs is simple and ...
read moreCreating A Safe Environment For People In VR
crestexplorer
At the 3rd Party Dev State of the Union at EVE Fanfest 2016 earlier this year, CCP FoxFour drew my attention to a limitation of the current approach used by crestmatic to generate CREST documentation: it only discovers resources always reachable from the API root from the perspective of the ...
read moreStrange Tales From Other Worlds
At the end of last year, Michael Brunton-Spall and Jon Topper asked me if I would like to give the opening keynote at Scale Summit as I had “lots of experience scaling weird things”, by which they meant Second Life and EVE Online. I immediately thought of The Corn Field ...
read moreTowards A Generic Media Type System
The early days of RESTful hypermedia API design tends to involve lots of homogeneous collections. In the case of CREST vnd.ccp.eve.Api-v1 pointed to the logged in vnd.ccp.eve.ccp.Capsuleer-v1 which pointed to a vnd.eve.ccp.CharacterCollection-v1 of contacts which pointed to many vnd.ccp ...
read more#recordstoreday
3 weeks ago I spent a few hours with photoshop working on the Story Bird logo that Linda made a while ago to make it suitable for print. 2 weeks ago I spent a few hours researching the best way to convert the 24 bit 48 Khz Story Bird mixes ...
read more#bandcampday
I love record shops. Whenever I had pocket money it would go on Metallica and Nirvana CDs bought from Our Price or black t-shirts to match. When I lived in Nottingham I bought Boards Of Canada CDs from the same Selectadisc that my Dad bought a rare Fairport Convention single ...
read morecrestmatic
A year ago I gave a talk at EVE Vegas about building RESTful CREST applications. My #1 recommendation was to specify representations in requests, but that’s hard to do when there is little documentation on which representations are available and what they contain.
Fortunately CREST is self describing: send ...
read moreFree Tests For Everyone!
Modern software development is sometimes colourfully described as being similar to firing tracer bullets at a target. Rather than spending time doing a lot of research, design and specification up front, the smallest, simplest version of the software is built and the feedback gathered from its use is used to ...
read moreInvesting In Testing
Last year I was talking to an engineer at Droidcon London who was working on an Android app with 100% test coverage. I immediately asked whether he thought 100% test coverage was worthwhile: many software engineering teams strive to achieve 100% test coverage, but few succeed because it’s an ...
read morebuckd
One of the things I’ve been working on since joining Facebook is Buck, an open source Android & Java build tool which is significantly faster than many other Java build tools for a number of reasons.
As well as being fast, Buck gains a lot of power and flexibility by ...
read moreOrganisational Structures
There have been a number of blog posts recently about exciting new organisational structures. As Cory points out “Every early stage company thinks it has reinvented management”: a very dangerous belief when betting on a new organisational structure can be much riskier than betting on the wrong product.
It starts ...
read more