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:

Advertisements

Squared Square Puzzle

Simon came up with an idea to make a puzzle of “squared squares”, a concept he learned via Numberphile. One square of 112 by 112 cm (the smallest possible of the squared squares) is made up of squares that each form a sum of two or more neighboring squares. Simon later completed the whole puzzle, together with his little sis. They had to pick up the tiniest square with a pair of tweezers!

 

DSC_0066

DSC_0075

DSC_0077

DSC_0078

DSC_0079

Simon drew all the exact pieces of the puzzle on a sheet of paper first, but then – open source minded as he is – he decided to create a website where the pieces would be available for everyone to print out. We’ll post the link here once the website is online (I sometimes literally beg Simon to put projects online, as he always considers them unfinished or not good enough). He also wrote a webpage about the concept of squared squares, but (surprise!) hasn’t hosted it on GitHub yet either. Here comes a screenshot of the webpage:

Squared Square Webpage 1 Feb 2018 1Squared Square Webpage 1 Feb 2018 2

As the last exercise with this concept, Simon also calculated the area of the smallest possible squared square on his desktop calculator:

First Squared Square Found Area calculated by Simon 1 Feb 2018

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).

 

 

Text Generating Machine that Posts to Twitter

A milestone in server side programming here, as Simon has built a text generating machine that posts to Simon’s Twitter account! Essentially, it’s website where anyone can enter his own text for the machine to make a “poem” from using an acrostic algorithm; the machine simultaneously posts that “poem” to Simon’s Twitter.

This project falls under the topic of building an interface for Twitter. The original inspiration came from Daniel Shiffman. Simon writes:

You can try my Acrostic machine at http://acrostic-tweeter.herokuapp.com/ and it tweets to my account at https://twitter.com/simontigerh/

In this scenraio, I’m feeding in some text and a word. I’m clicking a button, to tweet the acrostic. I used node to create the server. I later put that server on heroku.

I’m also using a couple of packages:
– express – to host my interface
– socket.io – for the server and the client to talk to eachother
– twit – to tweet the acrostic

 

 

 

 

 

 

In the previous video, I got everything working, except that after I try to use heroku (by typing `heroku login` in git bash), What appeared was:
“`bash: heroku: command not found.
Later we solved this issue by using command prompt:

Simon got positive feedback on his project from Daniel Shiffman, who asked Simon to give some explanation about what the machine on the webpage and also to give a link to Simon’s Twitter:

Acrostic 18 September 2017

Simon’s Superellipse tutorial on Thimble

Superellipse in Thimble 8 Sep 2017 4

Simon has created a beautiful little website with a tutorial (that he wrote completely on his own, from scratch) on how to build a superellipse in JavaScript.

Here is the  link: https://thimbleprojects.org/simontiger/315031/

(it’s on this new thimble.mozilla.org online code editor)

What specially delights me about Simon’s works lately is the subtle sense of humour he writes with (probably acquired through both watching Daniel Shiffman’s videos and reading Murderous Math books):

Superellipse in Thimble 8 Sep 2017 2

Superellipse in Thimble 8 Sep 2017

The project isn’t finished yet as the example Simon is linking to the website is only for an ellipse and a superellipse yet:

Superellipse in Thimble 8 Sep 2017 3

Simon also plans to add other shapes to the website later.

 

Analysis and generation of text-based data. What else to do on vacation?

During the vacation, Simon worked on several programming projects playing with language and grammar, from Daniel Shiffman’s Programming from A to Z course at New York University. Those included creating a new context free grammar sentence generator, using a markov chain in a Google form, creating a diastic machine with JQuery and making a regular expressions tester in JavaScript.