Maths Jam in May

What a blissful atmosphere at Maths Jam Antwerp yesterday, full of respect, encouragement and acceptance. It’s an international monthly meet-up taking place every second to last Tuesday of the month, simultaneously at many locations in the world, three hours of maths fun! This was Simon’s first time. He solved two difficult geometry problems and showed some of his current work to the math enthusiasts who attended. Was hopping and giggling all the way home.

Advertisements

Tantrix Game in JavaScript

Simon talking about his Tantrix Game code and the math behind it. It has been Simon’s first community project, many thanks to everyone who has contributed hexagonal tiles for the game! The game isn’t finished yet, but the video gives a good insight into the work in progress. Simon will finish it at a later date he says. Feel free to try and finish it on your own and share your results! The code is on GitHub at: https://github.com/simon-tiger/tantrix

This is a separate link to see what Simon has got so far in action: https://simon-tiger.github.io/tantrix/tantrix/

 

Below is Simon’s original YouTube post summoning contributions:

Simon and Daniel Shiffman

Today is one of the most beautiful days in Simon’s life: NYU Associate Professor and the creator of Coding Train Daniel Shiffman has been Simon’s guarding angel, role model and source of all the knowledge Simon has accumulated so far (in programming, math, community ethics and English), and today Simon got to meet him for the first time in real life!

Daniel Shiffman posted:

Simon’s Decision Tree Library

Simon has just created a decision tree library, called “Decision”, that is helpful in building decision trees/forests (Machine Learning). He has also tried performing unit tests for the first time, and passed several of them! Once Simon’s library is in GitHub he also plans to link it to the testing hub CircleCI so that no merging can happen without passing tests. In this video, Simon explains what a decision tree is, shows his library and his test decision trees.

Simon’s library on GitHub (with a huge Readme that Simon wrote himself): https://github.com/simon-tiger/decision

Simon’s library on CircleCI: https://circleci.com/gh/simon-tiger/decision/3

Simon’s unit tests:

Screen Shot 2018-02-20 at 16.59.12

Simon made his own speech library: Speechjs

Simon has just finished working on his first library,  a #speechlibrary Speechjs. You can find Simon’s library on GitHub: https://github.com/simon-tiger/speechjs

Simon also added a reference page at: https://github.com/simon-tiger/speechjs/wiki/Reference

You can use this library for any project that uses #speechrecognition and/or speech synthesis. Simon has put it under the MIT (permissive) license, to make sure everyone can use it for free, he emphasized.

While writing the library, Simon also recycled various code he found online, but essentially this library is his own code. He calls the library “just a layer on top of the web speech API” (that means you’re limited to what your browser supports).

 

Simon builds his own RiveScript Editor

Simon has been working on a RiveScript Editor for creating chat bots. RiveScript is a markup language, that gives chat bots the ability to respond to messages from humans using natural human language. This project will involve server side programming, which means that Simon will have to go through the whole process of hosting it on Heroku once he’s finished. So far, he decided to give himself a break in the middle of programming the syntax highlighting, which he found a little too much boring work, so not sure whether the editor will ever be published. In any case, Simon has got quite far and the interface looks good.

Simon has already built three chat bots using RiveScript online editor and Atom.

 

Simon contributes to the p5.Speech library

Simon has made a pull request to the p5.Speech GitHub repo (a milestone!) and hopes his request gets merged. In this video he explains what he wants to improve with his contribution.

Later it turned out that someone else made a similar request (with more extras) and that request will probably be merged, so Simon was definitely thinking in the right derection. He got positive response from Daniel Shiffman and it looked like Simon’s comments have sparked a discussion on GitHub.

 

Simon contrubuted to p5.Speech library. Pull request 14 Oct 2017

Simon writing on GitHub: 

This github issue is referring to pull request #7.

As you can see in commit a2a5d38, there are some comments. Which look like 
this:

// this one 'start' cycle.  if you need to recognize speech more

// than once, use continuous mode rather than firing start()

// multiple times in a single script.

The comments are right before the start() function in the p5.SpeechRec 
object. But the commit adds arguments to this function:

p5.SpeechRec.prototype.start = function(continuous, interimResults) {

  if('webkitSpeechRecognition' in window) {

    this.rec.continuous = continuous;

    this.rec.interimResults = interimResults;

    this.rec.start();

  }

}

And before, that piece of code looked like this:

p5.SpeechRec.prototype.start = function() {

  if('webkitSpeechRecognition' in window) {

    this.rec.continuous = this.continuous;

    this.rec.interimResults = this.interimResults;

    this.rec.start();

  }

}

Are the comments "unnecessary" now? In other words, Should we remove 
them or leave them there?

Simon contributed his own cloud for the Processing Community Day

Schermafbeelding 2017-10-06 om 18.39.37

In the video below, Simon is showing the cloud design he contributed to the community project collecting cloud designs for the Processing Community Day coming up on October 21, 2017. You can play with Simon’s design on the community project webpage created by Coding Train at https://codingtrain.github.io/CommunityClouds/

Simon’s cloud is called “Round Cloud”. Once you open it on the Coding Train Community Clouds page, the cloud changes its shape every time you click on it.

Simon Proposes a Community Project in Procedural Design

Inspired by the Processing Community Day projects, Simon came up with an idea to launch his own community project – in procedural design. He used the Coding Train Community Cloud page as inspiration, trying to guess the code used to build it. The videos below show Simon in process of creating the interface.

Simon later presented his project on the Coding Train Slack channel where other members (including Daniel Shiffman) suggested that Simon narrowed down the theme (originally, it was procedural design projects in general and that was too broad). Simon was very upset as he was afraid his “big project” would become too small and couldn’t come up with a theme. Two days later we agreed that he would make several examples for the projects and publish them on the project’s website to give everyone a better idea of what he was looking for.

At the moment, Simon has already published the first example but there seems to be a bug in it, so please view it as work in progress. (Simon originally wrote the code for the Community Cloud project and it worked when he shared it in Processing JS, but on his own project page, using instance mode, the cloud looks like a circle).

Simon writes: Everybody is welcome to contribute to my community project called *Procedural Designs*!
Link to GitHub rep (for this community project: https://github.com/simon-tiger/procedural-designs/ (link to github pages site in the README).