Showing posts with label geekery. Show all posts
Showing posts with label geekery. Show all posts

Monday, June 20, 2011

Supanova Sydney 2011


Spritza and I in our costumes

Supanova 2011 has come and gone, and it was awesome. There were parts about it which weren't so awesome, and those will be mentioned, but in general it was pretty good. Photos were taken, much geekery was around, and I spent money.

Lots of money.

When Spritza and I arrived at the venue, we found that they had split the attendees up into multiple lines. Two lines for the people who were exchanging their pre-bought tickets for stamps or wristbands (split according to where the ticket was purchased from), a line for people who had their entry stamp/wristband, and a line for the people who hadn't bothered to pre-purchase their tickets. This system worked well enough for before the convention opened, but I can't help but feel it would be fairly overkill once people were getting inside.

After queuing for what seemed like an eternity, we were finally allowed in the building to... wait for it...
To queue again! They opened the building, but only to let people in the first room - which contained a total of one stall, and all the booths for people to get autographs. Of which none were there yet. This was ridiculous! Eventually, they opened the gates blocking the rest of the convention, which caused a minor stampede for the actual convention stalls. Why they didn't open those gates at the advertised time of 10am I'll never know...

Inside there was a plethora of people hawking their goods. Geeky goods, of course. Plenty of generally geeky figures, DVDs, random art prints, and the like were being sold left right and centre. Except for centre, I supopose, because they had put a huge freaking wrestling ring in the middle to accommodate the crappy Australian Wrestlers that noone actually cares about. Well, I say noone cares about them, but when there was a match on the central area got ridiculously packed, making it hard to move and purchase things from the stalls in the area.

Which leads me to the first problem with Nova – space. The convention seems to grow yearly, and they've clearly outgrown the space that The Dome at Olympic Park offers them. It was quite difficult to move around – especially during the aforementioned wrestling matches, but in general it was quite difficult as well. On Sunday it was much easier to move, mainly because there were far fewer people. Hopefully the organisers will see this and move somewhere bigger – or organise the spaces better. 

There were many stalls that were positioned in places that caused massive traffic jams – for example, one particular stall had the guy who was selling the stuff (dressed as Duke Nukem – awesome) on the outside, since his section was a wall with shelves of stuff. Every time I went past that section, there was a massive traffic jam due to people checking out the wares and buying things. While it took no more space than the stalls that actually had desks and people behind them, it seemed kind of out of place, and more difficult to maneuver past, since generally the desk ones had a defined area where you could tell if someone had stopped to look and spend money, or were just passing by.

As per usual, the cosplay was quite good. I didn't get a chance to watch either of the competitions, but simply walking around you get a good idea of what was there – as well as being part of the cosplay chess game! There were multiple Minecraft creepers walking around, Captain Falcon, Hercule (who I'm sure was the same guy as Hercule, done on separate days), many, many Miku's (including two male Mikus – one being THE TALLIS OHMYGODNO), a few Haruhis, etc.

This is the tamest Tallis I could find. I refuse to look at the others.

Of course, I spent a lot of money, though this convention holds the distinction of being the con I have spent the most money at in a single event. I won't go into details of how much I spent (it was much more than I expected to, but not more than I took with me), though the loot I got was incredible. This includes the Shiva Bike figure I've been eyeing for over a year!

On a related note, while shopping for things, there were some kinds looking at the stalls – as you get at these events. There was a stall with a bunch of phone straps of nicely geeky things – anime characters, game characters, weapons, etc. These kids saw a particular phone strap, and immediately dismissed it with “Ergh its just a Minecraft block, why would you buy that?” This “Minecraft block” was the POW! Block from Mario. These children have clearly not been educated properly. I blame the parents.

Pictured: NOT a Minecraft block

Also, as you can see, the costumes turned out awesomely. Admittedly there was a minor disaster on Sunday – I knelt to get into my bag, and at that moment, the crotch of my pants ripped. I hid myself in my cape until an emergency sewing kit could be borrowed, then headed off to the restrooms to stitch myself back together. Imagine my dismay and panic when I opened this kit to find there was no needle! In the end, I simply pinned it closed and went the day constantly checking myself to make sure I hadn't come apart. This had happened in the line in the morning before we got in – quite funny in retrospect!

Obligatory loot photo!

Monday, April 4, 2011

Learning While Coding

The last week or so at work has had me learning how to do some things for when I program which I never expected. They are all things that are important things to be able to do, and a few aren't as difficult as one would expect, though the major one (which I will get to) has been giving me utter headaches, because it leads to a rather large change in programming style and way of thinking.

Warning, heavy geekery ahead. Though really, on this blog, would you expect anything else?

To begin with, Localisation of applications. This is quite a big thing on, well, any piece of software. How do you write a program to work in any language? To make it display properly in Japanese, Chinese, Russian? Apart from the obvious issue of needing someone to translate for you (if you do not know the language), you also need a way to make it easy to inject these language options into your software. For example, if you hardcode all of your strings, then for every language version you need to find where all of these are coded, then change them for each language, then recompile many different language versions. This is completely unmanageable!

Luckily, for me at least as an iPhone programmer, Apple have made it easy. It seems so alien to me, having something from Apple which simply works for a change (my work laptop is living proof to me that the Mac elitist pricks who tell me that Macs are superior to PCs simply are spending too much time staring lovingly at the form of the computer, rather than the fact that the screen is showing that all your apps have frozen)!
To localise an iPhone app, all you need to do is create a strings file (called Localizable.strings - remembering that its z is important because they're American and can't spell. Also, a lost of configuration stuff is skipped by using this particular filename, since its the default), and define a bunch of variables in there. Once you have done that, wherever you code a string in the app itself, replace with the following piece of code:

NSLocalizedString(@"TITLE", nil)

where "TITLE" is the name of the variable, and the second parameter is simply space for a comment to assist a translator with (context matters a LOT in language).
Of course, there is a little bit more to it - you still need to actually localise your strings file. In xCode 4, all you do is go to the localise panel on the right, and add a localisation to your strings file. It asks you what language it is for (since the iPhone will use default language settings based on what the user picks). Then, simply change the variables you set in the above one to the language specific strings. Sorted!

It gets slightly more complex when you are localising images and interface layouts (due to button sizes and things), but this is the general workflow of it. Not bad at all!
(Also, Ray Wenderlich's site is where I found the tutorial that taught me this. Awesome site full of tutorials. Don't freak out when you see the "I'm quitting iOS" post - its an April Fool's troll)

 
Unrelated: Rocks fall, everyone dies

Another important thing I've been learning as part of work the last few days has been how to use a Unit Testing framework for the iPhone. Unit testing is an important part of programming. At least, that's what I've heard - I've yet to see results from it, because all I've been doing is learning how to do it, how to combine it with Mock Objects, and trying to get my head around this enough to write some useful tests.

The theory behind it is that if I write a test that ensures I get correct output from a function I write, then later on if I change the function (refactoring, optimisation, etc), then I can rerun the tests. If the tests fail, then obviously I've changed something to the point where it breaks - aka failed refactoring, where the actual processing has changed. Sounds useful huh?

Well, even more than that, once I've caught up on the tests I should have been writing, I can use this for TDD - Test Driven Development. This is where we write the tests BEFORE the code is actually written. The purpose of this is to force me to think about what is actually needed (in terms of variables and functions), and then ensure that each function works before I move onto something else (since its always nice to see green lights as irrevocable proof that your code works).

As you can probably tell, this is a far cry from my usual method of "think about the system, design some objects, start writing, run the app to see if it works". Hopefully, this'll work much better.

Its just doing my head in at the moment.

I won't go into details on how to get it working on the iPhone, since there are many ways to do it (and this post will go insanely long, and overly technical for those not so code minded), though I will mention that I'm using GHUnit-iPhone for a test suite, and OCMock for the Mock Objects, if you are interested in taking a look.

I will probably integrate some of this onto my home machine so I can work from home if required - and possibly more importantly, for my own work (which has yet to begin / be designed).

Tuesday, February 1, 2011

D&D Character Test

Just a quick post - maybe a longer post will appear later today.

I took a "Dungeons and Dragons Character Test" - essentially asking LOADS of questions about what I'm like, what I'd do in certain situations, etc. It then spat out a D&D race, class, alignment, level and stats as if I were a D&D character. I thought I'd share the results (and test link) with you guys.

My results:

Neutral Good Human Wizard (3rd Level)

Ability Scores:
Strength- 11
Dexterity- 13
Constitution- 10
Intelligence- 15
Wisdom- 13
Charisma- 11

Take the test here


Note that its quite a LONG multiple choice test. And it gives you some detailed results in terms of how close you were to other ones.
I was -21 points for Monk :3

Sunday, December 5, 2010

Pathfinder - The Bastards of Erebus

So, today I Gmed the much anticipated end of the first part of our Pathfinder campaign.

For those who don't know, Pathfinder is essentially Dungeons and Dragons 3.5, refined. I prefer it over D&D 4 for a few reasons, for example the simplifications in Pathfinder make more sense than the DnD4 ones. I particularly like keeping the 9 tiered alignment system (all combinations of Lawful, Neutral, Chaotic, Good and Evil, as opposed to DnD 4 removing Chaotic Good and Lawful Evil)

I've GMed a couple of sessions of this now, and the "party" (3 players, consisting of Mark, Andrew and Sarah) have successfully completed the first part of our Adventure Path, titles "Council of Thieves"

This first book had the heroes meet with some rebels who have the goal of attempting to make the doomed city of Westcrown a nier place to live, rescuing their leader, and then destroying the bandit group known as the Bastards of Erebus, a group of Tiefling thieves who have been causing trouble in Westcrown lately.

All seemed to go fairly smoothly, although we had a few rough patches, such as a surprise attack on the party while in the Bastards' lair which almost resulted in Dorn (a Ranger who acts more like a Barbarian) having some speed holes added to him via crossbow bolts.

Dorn did, however, see fit to eat a bolt of linen cloth which was being attacked by moths.

I awarded him 200 bonus experience for this. After all, it was amazing, and he even rolled a 20 on it :)

So now our heroes have stamped out the Bastards of Erebus, discovered there was a connection between them and the well hidden Council of Thieves, and have agreed to audition for parts in a play entitled "The Six Trials of Larazod" - a play where noone has survived playing the main characters in the uncut version.

They're in a play as part of a larger plot to infiltrate nobel and government buildings in an attempt to find a way to put an end to the shadow beasts that lurk the streets at night.

Yes, it seems odd. It also seems damn hilarious, and I can hardly wait the two weeks to see Dorn die a horrible death on stage - possibly literally :P

The other characters in the party are slightly less insane, being a druid who calls himself Kynan of the Grove, and a Sorceress with a draconic heritage known as Azerlia.

Fun stuff :)