Snowpocalypse 2015

This snow is just awful. Some of the snow banks were as tall as I am back a week ago. Now, I’m sure they’re taller than me. They have to be.

How many inches of snow have we gotten? I don’t know. Too many. People are saying that it’s more than the Snowpocalypse 1978. I wasn’t around in ’78, so I’ll just have to trust the numbers. It’s been snowing almost every day since this time two weeks ago, probably before, and it’s not going to let up anytime soon, it seems.

The MBTA has been under a ton of stress, and the trains were shut down at 19:00 this evening, and they’re not starting up at all tomorrow. I’ve not been outside today, and I don’t think I’ll be going out tomorrow either. It feels very restricting to be forced to stay in one place all day, even if that’s something I would have done anyway. My choice in the matter is taken away, and that makes it seem more unhappy.

I’ve tried to use this time to be productive, and it’s worked to some degree. Mostly, it’s just been more reason to keep my pyjamas on and drink tea while I do my work. I’ve been spending a lot of the storm this week with a friend of mine who lives pretty close by. Tomorrow is a bad storm day, and public transit is severely limited, so we’ll be stuck inside tomorrow, and we’ve been trying to plan our meals for this particular episode of Snowpocalypse. This is in an attempt to make sure that the food that we’ve got lasts during the worst of this wave of snowfall. We’ve been pretty creative so far, and we’ve got some good ideas for tomorrow. So far, we’ve had a Drunken Noodle-inspired stir fry, a loaf of homemade bread, tortillas with beans and corn, and probably other things that I don’t remember…. Tomorrow is pancakes and curry—separately, of course. Not together.

I’ve also been reading some of Neuroskeptic’s posts recently, and found two today that I found pretty fascinating. This one is about how chance is not already 50% in the field of machine learning. I think that machine learning will continue to grow as one of the best ways to squeeze as much information out of limited imaging data, so I’m glad that people are bringing attention to the flaws in current methods. This one is an interview with Cordelia Fine, author of Delusions of Gender. In the interview, Fine discusses how confirmation bias leads scientists to find an over-abundance of evidence for gender essentialism, even when leading gender scholars agree that gender essentialism is probably not an accurate way to characterize gender. Neuroskeptic also wrote a review of Fine’s book, and I may post that here once I read it.

I’ll keep you updated on how the snow goes, and hopefully I’ll soon have my next (small) project done and ready to talk about. In the meantime, if you’re in the Boston area, stay safe and warm!

January 2015 Update

Hello, all!

It’s 2015. The holidays, New Year’s day, and Ludfesto have all come and gone. I got wrapped up in holiday and job-search business (busy-ness), so I didn’t end up finishing my entry for Ludfesto. This is very unfortunate, but I did end up learning a lot, and ended up practicing a lot of Python and Esperanto in the process, so it wasn’t all for naught. I also learned a bit about Twine (www.twinery.org) and RenPy (www.renpy.org), tools that I may use in the future.

I’m trying to get some ideas of things to post so that I can really build up this blog, and I’m hoping to start posting regularly soon. In the meantime, here’s a list of exciting things that have come to my attention recently.

YouTube has announced that it will be defaulting to HTML5 when possible. This is exciting as it shows both technical advancement, and the advancement of free-er software in a major space. It’s not completely implemented for stable versions of Firefox, as I still have to manualyl choose HTML5 playback over Flash, but it seems that at least the intention is there.

LibrePlanet is officially happening on March 21-22 at the Stata Center at MIT. The first volunteer training meeting is this coming Monday, and I’m looking forward to helping out again this year.

The FSF has been implementing some other marketing/visibility moves recently as well! The “What is Free Software” page now has an embedded version of RMS’s Tedx talk, which I think is a very effective way to introduce Free Software. Additionally, there is a new campaign with FSF/GNU buttons for blogs, webpages, and social media profiles. I’ve added one to my site. I think that they are well designed, and they link directly to that “What is Free Software?” page of the FSF’s website. Very cool.

In more local news, New England has been getting a lot of snow! I spent the day of the actual storm (Winter Storm Juno) stuck inside working on job applications and researching grad programs. I would probably have spent the entire day inside even if there were not snow, but having the option to leave taken away from me made it seem a lot more prison-like, and I was pretty stir-crazy before noon-time. The next day, I took a walk around Cambridge just to get out of the house. I’ve been thoroughly impressed by Cambridge’s maintenance of the roads and sidewalks after the blizzard. There are many places (like Harvard Square) that have cobblestone, so the cleanup is tough and the roads are slushy, but overall, the sidewalks have been surprisingly clear.

I may start making news-ish roundup posts to supplement more project-oriented posts just so that I keep myself writing. Hopefully now that the holidays are over (and have been for a while), I will have the time and motivation to work on more projects, and to keep my blog updated with news about them.

Using CC-BY-SA Licensed Media in Video Games

While browsing through OpenGameArt.org for ideas and possible resources for Ludfesto and beyond, I saw a thread called Practicality of CC-BY-SA (active at the time of this writing). Having recently decided that I would want to release game resources under the CC-BY-SA license, I saw this as very relevant. I read through a number of the comments on the post, and decided to explore some of the main questions that kept reappearing with respect to copylefted assets in video games.

Please note that these are my own opinions and speculation. I am not a lawyer, and I have no affiliation with Creative Commons or any other authoritative organization.

Question 1: Can I include CC-BY-SA assets in a proprietary video game?

I think that the answer to this is “no,” but that is because of my belief that video games, unlike most other types of software, are art. If video games are art, then they are derivatives of their assets, so if their assets are copylefted, then the game itself must be copylefted.

If a game is not considered art, it might not be considered a derivative work. Just as photo-editing software is not considered derivative of the photos it can load, a game that loads potentially arbitrary assets could be argued not to be derivative of those assets, so license compatibility is irrelevant. This view is common in the OpenGameArt thread, and makes sense if video games are indistinguishable from other types of software.

The problem with the existence of multiple interpretations is that, unless there has been some legal precedent, an individual that wants to use CC-BY-SA assets in a proprietary game cannot be sure that this is legal. For this reason, many people in the thread said that the discussion dissuaded them from using CC-BY-SA for their art. For a conversation in a community built around the idea of sharing work with others, there was a surprising number of posters who either disliked the idea of FOSS or felt ambivalent about it.

Question 2: If I use CC-BY-SA for my art, does that mean that people can’t use my art to make commercial games?

No. This question conflates “proprietary” with “commercial,” and “free-libre” with “free-gratis.”

The GNU website has a good article about charging money for Free Software.

A copyleft license just means that when you distribute your work to someone, however you decide to do so, they have the right to redistribute it under a compatible copyleft license. It doesn’t mean that you have to distribute it for free (i.e. without charging money).

Question 3: If a game uses CC-BY-SA assets, do screenshots, screencasts, or other captures need to be licensed under CC-BY-SA?

This depends on the purpose of the new media. Possibly, you’re using this new media in a way that falls under fair use. Criticism, parody, and education are all uses that are protected to some degree under fair use. If your use falls into one of these categories, it’s possible that the license doesn’t matter, and you don’t need to get permission from the original creator of the media/artwork/video game. Make sure you read up on fair use before you assume it applies to your work.

If your use doesn’t fall under fair use, then I think you can be safe in assuming that it counts as a derivative work. Are you publishing a screenshot to show something that you’ve been able to do in the game (an achievement, funny bug, or in-game creation)? Are you streaming or videoing your gameplay to show an audience your play-style or to give the audience an experience that they wouldn’t get from a trailer or review? If so, then you’re very clearly making a derivative work. If all the content visible or audible in your derivative work is CC-BY-SA, then by the license terms, your derivative work must be licensed CC-BY-SA (or something compatible, if that exists).

If the content is of mixed licenses (as could be done with an engine that loads user-defined resources locally), then you’ve got to license your derivative work appropriately. If you’re working with CC0/Public Domain media and CC-BY-SA, then you’ve got to use the CC-BY-SA license.

The unfortunate part is when you’ve got conflicting licenses: say some CC-BY-SA media and some proprietary media. The CC-BY-SA media requires you to license derivatives as CC-BY-SA, but perhaps the proprietary media disallows copyleft derivatives. I think the sad solution to this is simply that your derived work cannot be published, but maybe there is a legal and ethical work-around.

Question 4: Wouldn’t CC-BY be better?

This is a question about Copyfree vs. Copyleft, and the answer is probably something like, “Whatever works best for you, and fits best with your idea about how to promote Free Culture.”

If you want to allow people to use your work in absolutely any way they see fit, as long as they attribute your contributions to you (or maybe even without attribution), then CC-BY, CC0, and Copyfree licenses in general are what you want.

If you want to allow people to use your work in ways that force the propagation of Free Culture, then CC-BY-SA and Copyleft licenses in general are what you want.

I may come back to this post and edit/update it if my views change, or I see that I’ve made a mistake (and I’ll let you know when/if I do with an [Edit] notice). I know that I will definitely make a post about Copyleft vs. Copyfree philosophies in the future, because I don’t know where I stand, and I think it’s an important topic to explore. I’m also aware that there are ways in which the CC-BY-SA and the GPL are incompatible, so I’d like to explore that as well.

Please comment and let me know what your opinions are on the issues discussed here, and definitely let me know if I’ve gotten something wrong.

[Edit 2014-12-16] Upon re-reading the post, I found that my original answer to Question 1 was not adequately descriptive of the subtleties of the question, and that I had made some stylistic and grammar mistakes. I also added some more hyperlinks to resources for terms and ideas that readers may be unfamiliar with.

Pyglet Tutorial Trouble and Object-Oriented Programming

As I said in my last post, I’m excited about using Ludfesto as a learning experience. Fortunately (“fortunately”) for me, I have a lot to learn.

Pyglet is a module that I had never used before I started this project. Not even once. I was, and still am, excited about learning it because 1) it is a Python module, and Python is both useful and rather familiar to me, and 2) it seems to be much more powerful than PyGame, while still remaining rather high-level and beginner-friendly. Unfortunately for me, pyglet doesn’t seem to be as popular as PyGame, so there are many fewer in-depth tutorials. The best tutorials that I can find either do not cover the type of game mechanics that I would like to learn how to implement, or they use libraries/modules that I don’t want to use due to their licenses (more on licenses in another post).

What’s more, pyglet and game development in general are very object-oriented programming heavy. This makes complete and total sense, and OOP is popular for a reason. However, I don’t know much about OOP, so there is significantly more to learn than I expected. I find myself in a position where I am able to follow the tutorials that do exist and work with them to understand what is going on in the example games and applications that I can find, but I can’t extend them in the ways that I would like, because I lack the OOP expertise.

So that’s my next step. I’ve got to really dive head-first into learning Python’s OOP features in order to move forward with Ludfesto, game development, Python, and programming in general. But that’s what I wanted! I’m using Ludfesto as a learning experience, and I have been presented with something very important and relevant to learn for the sake of Ludfesto. I’ll check back in after I’ve learned a bit more, and maybe even made some progress.

As an aside, I also wanted to learn a bit more about vector graphics and Inkscape for Ludfesto, but that may be a bit too much to cram into the next few weeks. So I will probably just be using raster graphics/pixelart for this particular project.

[Edit 2014-12-14] With respect to licenses, I’ve actually found that Cocos2d, a library “built on top of pyglet,” is actually licensed under the 3-clause BSD license, which is GPL compatible … and actually the same (I think) license that pyglet itself uses. I just didn’t immediately recognize the text of the license. So there’s another project: learning more about Copyfree licenses. Now that I know what the licensing issues with Cocos2d were only in my head, I may go ahead and use it if this tutorial works out. :)

Ludfesto, the Esperanto Game Jam

Hey all! [Esperanto below | Esperanto suben]

If you’re very involved in the Esperanto community on the Internet, you may know about Ludfesto, the Esperanto gamejam. Ludfesto is happening this December, and I’m doing my best to use it as a learning opportunity.

I’m working hard to learn how to use the Python module called pyglet. I’m starting by trying to make a Sokoban-style game (which I’m calling Kestpushulo), which I’m hoping to use as a base for a more sophisticated top-down, action-adventure game.

Eventually, I’ll be pushing the project to GitHub and publishing info in the Projects section of this site, so keep an eye out for that! Plus, I’ll be documenting my progress here in blog posts categorized under the Ludfesto tag and category.

[Esperanto/Esperantacho:]

Saluton Chiuj!

Se vi estas aktivega en la reta parto de Esperantujo, eble vi konas Ludfeston, kiu okazas chi-decembre. Mi provas uzi chi tiun okazon kiel oportuno pro lerni.

Mi provas lerni Pitonan modulon, “pyglet,” per konstrui Sokoban-stilan ludon kiun mi nomigas “Kestpushulo.” Poste, mi volas uzi Kestpushulon kiel bazo por ia plikomplika, iomete Zelda-stila ludo. Estonte, mi afishos chi tiujn projektojn al kaj GitHub kaj la “Projects” sekcio de tiu-chi retpagharo. Ankau, mi dokumentos mian progreson chi tie per blogafishajhoj klasitaj kiel “Ludfesto.”

Learn some cool languages–easily!

I was recently turned on to some interesting websites for learning Esperanto and Toki Pona.

For Toki Pona, check out tokipona.info. (Chi tiu retpagharo estas en Esperanto.)

For Esperanto, check out kurso.com.br. This site has a Free Software (GPL’ed) program for learning Esperanto. It runs on Mac OS X, Windows, and GNU/Linux. I expect that it would run on other POSIX systems too, like FreeBSD and OpenBSD. Maybe.

Additionally, never forget lernu.net for a great (wonderfully multilingual) Esperanto resource.

Hello world!

Hey there!

Welcome to Shaun William Hallee’s personal blog and webpage.

I’ll be using the blog to express my opinion on various events and happenings, and I’ll post articles, resources, scripts, and who knows what else as well.

[Edit 2014-12-11] I’ve updated the layout, edited the content a bit, and am hoping to get started with actually publishing here. :)