Running tests and getting coverage reports on server deployment in SnailLife

Yesterday I added tests to server deployment in my deployServer.sh script: echo "Running tests" cd ../../server/lib set -e echo "mode: set" > allcoverage.out for d in $(go list ./... | grep -v vendor); do parentdir=`dirname "$d"` subdir=`basename "$d"` echo "subdir: " $subdir if [[ $subdir == "tests" ]]; then go test -cover -coverpkg=$parentdir -coverprofile=profile.out $d else go test -cover -coverprofile=profile.out $d fi if [ -f profile.out ]; then tail -n+2 profile.

Continue Reading »

ECAL session notes: Open-Ended Simulations

As before, what follow is a very slightly cleaned up version of the notes I took during the third ISAL summer school session at ECAL 2017. Also as before, note that this is very rough, made while I was reviewing them tonight. Apologies for any typos or other mistakes. Unfortunately I had some laptop issues toward the latter part of the talk and ended up taking notes by hand for part of it, which meant missing out some partial implementation examples that were presented towards the second half.

Continue Reading »

ECAL session notes: Digital Evolution

As before, what follow is a very slightly cleaned up version of the notes I took during the second ISAL summer school session at ECAL 2017. Also as before, note that this is very rough, made while I was reviewing them tonight. Apologies for any typos or other mistakes. Digital Evolution Charles Ofria, Michigan State University Before the talk started there was a bit of discussion about the previous talk, on historical and philosophical perspectives on artificial life - specifically on the conclusions reached about Tierra in the last talk, with which this speaker somewhat disagreed.

Continue Reading »

ECAL session notes: Historical and Philosophical Perspectives on Artificial Life

What follow is a very slightly cleaned up version of the notes I took during the first ISAL summer school session at ECAL 2017. Note that this is very rough, I was just reviewing my notes and thought I may as well put them into a post format at the same time to revisit later. Apologies for any typos or other mistakes. Historical and Philosophical Perspectives on Artificial Life Mark A.

Continue Reading »

Day 1 of ECAL 2017 - ISAL Summer School

Today was the first day of ECAL (European Conference on Artificial Life) 2017 in Lyon, France and my first year attending. It’s lucky I managed to go this year, because apparently this is the last ECAL! Next time it will be turning into the International Conference on Artificial Life and will be held much farther away (I think it is meant to be held in Japan). Although I am already getting my hopes up to go again, not only for the conference but to visit Japan once more!

Continue Reading »

Server and client for SnailLife Go

Over the last couple of days I restructured SnailLife Go into a server and client. I’m still in the “rough draft” stage, but the top level project structure now looks like this: gosnaillife ├── client ├── cmd ├── common ├── LICENSE.md ├── README.md ├── server └── setup Intent Split application into server and client CLI apps. Create REST API for client-server communication Have a “common” package for structures which will be reused by both server and client Create some rudimentary deployment scripts for both server and client main.

Continue Reading »

Go auth (and other) progress

July 28 Made a bit more progress on the authentication basics today. Relevant commits are: Add http package; have auth0 test delete user it has just registered after test is done Create json util; add logout test July 29 Today I focused a bit on the building and installation of snaillifecli. I switched my custom app configuration code for Viper because it apparently integrates really well with Cobra, which is a library to help make CLI applications.

Continue Reading »

Playing with authentication in Go

It’s almost 2am and I’m sleepy, but I wanted to write this down while it’s relatively fresh in my mind. I’ve been playing around with user authentication in Go. While actual user interaction is not the primary part of the simulation and will not be the focus in the Go rewrite as I said in my previous post, there will need to be a few basic actions that a user will take before leaving the rest of the simulation to do its thing.

Continue Reading »

Trying Out Go

A couple of weeks ago I had the genius idea to rewrite SnailLife in Go. I’ve already looked into doing this once before a couple of years ago, but wasn’t really feeling it and stuck with PHP (mostly for nostaligia reasons). Now though, SnailLife is this bloated PHP app. Most of the core functionality is in. After weeks of battling infrastructure issues, when everything was back up and running again, I took a step back and saw how big the app (or rather the 3 apps now) had become.

Continue Reading »

Talk on Big Data Tools and Architectures at Foo Cafe

I went to a really interesting talk at Foo Cafe in Stockholm tonight. I stayed almost 2 hours over my time limit, but it was so worth it. The talk was by Martin Neumann, and he gave us an introduction to big data and some tools commonly used to wrangle it. Below are the notes I took throughot the talk. I cleaned them up a tiny bit, but mostly these are just for my personal benefit and are super messy - if you didn’t attend the talk they may not be that useful.

Continue Reading »