Shawn Driscoll's Tech Blog

Stuff That Happened in the Past

Wednesday, January 29, 2014

Python Programming: Building Character

I recently posted a YouTube video showing how to quickly generate the beginnings of a role-playing character for Traveller, using Python 2.5.4.

The source code is below:

from random import randint

char_name = ['STR', 'DEX', 'END', 'INT', 'EDU', 'SOC', 'PSI']

char = [0,0,0,0,0,0,0]

for i in range(len(char_name)):
    char[i] = randint(1,6) + randint(1,6)
for i in range(len(char_name)):
    print '%s: %d' % (char_name[i], char[i])

I may do more such posts here in the future, now that I've recently learned how to properly post program code.

Monday, January 13, 2014

Python 3 is not Python

There was a time when Python was mature enough as a language for me to leave other languages I didn't care for and program strictly in Python. There was a time when Python programming was fresh and fun, yada yada. A time when print was a statement and not a function. A time when all the more interesting modules were written for Python, etc etc.

That time was Python 2.5.

Now Python has regulated itself to being updated just for the sake of being updated, making it less compatible or interesting for those that enjoyed the programming language enough to leave other languages.

Python 2.5 is for the computer programmer.

Python 3.x is for the software developer.

It's an entirely different mindset that Python 3 users come from. It's a job now, rather than a hobby. It's a corporate regulation rather than a computer artist's tool. Python 2.5 follows the Zen of Python, while Python 3 does not.

If I had my way, Python 3 would be renamed to something else. Because it is a different language, I mean, different development solution. And it doesn't run Python 2.5 code. Period.

Friday, January 10, 2014

Lessons From '70s Star Trek Arrays

Star Trek: The Mainframe Game was based on two-dimensional arrays. One for mapping sectors. And one for mapping quadrants. These were the short and long-range sensor scans that were routinely performed. These 2D arrays were stored as DIM S(8,8) and DIM Q(8,8) in the HP-2000F computer which ran its own version of BASIC.

Now fast-forward 40 years.

Star Trek: The Python Game is now in the works. And arrays have been poo-poo'd on over the years, but that doesn't matter. Arrays are a non-issue for Python. Its format may look different is all, as it uses [ ][ ] for its indexing.

Here is some Python code to get started with:

It seems pretty straight forward, as it initializes a ten by ten array with zeros. Then assigns an integer value of 807 to a location in the array. The program refers to the array as "grid". This is the output from the Python code:

And there you have it. The makings of an old-school 2D array using Python.