My Blog (old posts, page 4)

Graduated from ITP

After two long years of hard work I have graduated from NYU's Interactive Telecommunications Program (ITP). ITP was a wonderful experience and I am grateful for everything I learned and everyone I met. I'm definitely a changed person as a result. I'm happier and more optimistic about my future. And the ITP experience is not over! I am happy to say that I will be continuing for another year as a resident. I'm excited to continue contributing to this community as I continue to learn.

Over the past two years most of my blog posts have been in the ITP section of this website. Now that I've graduated I want to leave the ITP posts alone and start developing the regular blog section of this site. I will reorganize things a bit and will probably make some breaking changes. That's OK though because nobody links to this site outside of the ITP blog and Processing library documentation. To best prepare for the future, I need to make some adjustments.

Happy Holidays!

Happy Holidays!

This is the 3D animation I made for my holiday cards. View this with red-cyan 3D Glasses (red on the left, cyan on the right).

If you don't have 3D glasses you can watch the non-anaglyph version.

Read more…

New Host

I haven't posted over here in a long time because all of my efforts have been going towards the ITP section of the website. School is demanding all of my time and attention. I love it, but now that the summer break is here I will put a few posts over here.

I'm happy to say that I finally changed the hosting of this website from GitHub pages to an AWS S3 bucket and AWS CloudFront. Also the domain registration is now through Route 53. The immediate problem I had to solve is that the size of this website and the git repository backing it started to exceed the maximum GitHub repo size (1 GB). Doing something was necessary. The new location will provide unlimited growth as well as solve some minor problems. In addition, by moving to AWS I will be able to easily utilize sub-domains for new projects that make use of various AWS services. I'm eager to try out AWS Lambda functions in particular. Stay tuned!

Winter Break

My first semester at ITP is complete, and I enjoyed it very much. The workload was intense but that never bothered me. Every day I got out of bed excited for the things I would do that day.

Currently I am making improvements to this website. I made many enhancements to the style sheets and added a logo to the side menu. I also wrote extra documentation that I didn't have time for during the semester.

Before the next semester starts I hope to move the hosting from github to S3. If I have time, I'll add a P5 animation to the homepage.

Nocturne #1

Here's a somewhat clumsy rendition of Erik Satie's Nocturne #1. I botched one measure towards the end but besides that I hit all the right notes.

I put together my own version of the sheet music in MuseScore because I couldn't find a version I liked without notation errors. Also, I wanted to learn MuseScore.

First Jupyter Notebook Post

This is a blog post created in Jupyter notebook.

The goal is to see how well this feature works. I'd like to be able to post Python code to my blog. Happily, Nikola supports that seamlessly.

Normally Nikola preserves the width of each notebook cell. It makes sense that it does this but that doesn't work so well with this template because of the navigation bar on the left side of the screen. That's OK, I can override it by changing the notebook styling with this if I need to:

#notebook-container {
  width: 800px;
}

And here is some Python code:

In [1]:
def square(x):
    return x**2

for i in range(10):
    print(square(i))
0
1
4
9
16
25
36
49
64
81

And a plot:

In [2]:
%matplotlib inline
import matplotlib

import pandas as pd
import pandas.util.testing as pd_testing
In [3]:
df = pd_testing.makeTimeDataFrame(20)
df.index = pd.date_range(start=pd.Timestamp.now().floor('D'), periods=df.shape[0])

df.plot(figsize=(10, 5))
Out[3]:
<matplotlib.axes._subplots.AxesSubplot at 0x7f57609a2fd0>
four random colored lines ranging from -2 to 2 on the y axis and 20 days on the x axis

Magnificent!

Camera3D and 360 Video

A new version of Camera3D has been released!

Version 1.2 supports 360 videos. Here is an example:

In addition, I made some performance improvements using new tools found in Java 1.8. Processing 2.x is no longer supported.

More information available on the Camera-3D Camera-3D project page.

Lux Aeterna

I've spent the past few months learning Clint Mansell's Lux Aeterna, otherwise known as Requiem for a Dream. It's a piece I enjoy very much and have wanted to play since I found some videos of other people playing it on youtube.

I made a few small mistakes but they are hardly noticeable. It wasn't my best day for recording myself playing.

Read more…