Thursday, February 23, 2012

POP!




LANGUAGE WARNING

BOGAN WARNING







I had just debarked from the train at Gosford, ready to waste another 20 minutes between trains. Girls with tattoos and nose rings scattered around the station which made for a slight improvement to the otherwise standard “drunk man with pants falling down” scenarios. Unfortunately this was their stop, so they walked out of my life forever.

The next person to walk into my life wasn't a cute tattooed girl, but a shirtless man in his late teens, wearing his cap at a backwards angle, with a cigarette hanging from his mouth.

He called over to me as I was walking past, and that's where our conversation began.

“Oi bro nice sunnies”

“Oh, thanks.”

“They make you look like the fucking Terminator, but there's only one problem.”

“Yeah? What's that?”

“I can see your eyes through 'em. That means if you're smashed, and the coppers come by, you can't hide.”

“Haha yeah I reckon” At this point I engage BOGAN MODE, and start shortening words and adding emphasis to all my vowels.

“I like the sunnies where they can't see your eyes, like when they come around at the station, you just pop 'em on and you're fine”

“Yeah they're good sunnies..”

“But hey yeah, when you're at night though.. you can't put them on ay? Because... how sus does that look?”

“Yeah nah, pretty sus ay”

After that we talk about our destinations, his being a shorter platform station. So I tell him he should be in a rear carriage, which he agrees on. The guy is really friendly, if not a little forward. Then our chat turns into the bizarre.

“My mate hey, he got caught on the front carriage, and the door was locked to get to the other carriage.”

“Ah shit, he miss his stop?”

“Fuck no, he fucking kicked the door down.”

“Kicked it?”

“Yeah mate, kicked it, POP” Every time he says pop from here on, he making a physical kicking gesture

“Wow, strong guy.”

“Not only that ay, he kicked ANOTHER door, POP, and then another, POP. And then he was gonna kick the last door, but a fucking guard came.”

“Ah shit, he get fined?”

“Nah man, he runs up and he's all Asian and shit, and says “OH NO PREASE STROP KICKIN DOORAH” and opens the door with his key, POP”

“I suppose if I saw a guy who kicked down three doors I wouldn't stop him either.”

“Fucking ay, I reckon I could kick down any door in the world.”

“Yeah?”

*POP*
“Yeah, I was in custody before, and this cunt's going “I raped your sister I raped your sister”, so I kicked down the concrete door, POP, and then the coppers come, POP, then I kick his door down, POP. And he's fucking there, but I'm like “nah won't kill yah”, so I elbowed him in the face”

“That shut him up?”

“Yeah, because I cut out his tongue, and fed him his tongue.”

“That'll really shut him up”

“Fucking yeah, he's got a metal tongue now, but he talks all fucked up.”

at this point I make a weird noise as an example of a person with a missing tongue, much to his delight

“HAHA that's heaps what he sounds like ay, llike a fucking retard. Oi nah but I shouldn't say retard, cause it's offensive to proper retards. Hey have you seen Click?”

“The Adam Sandler movie?”

“Yeah, what if I had that remote, wouldn't need to kick down a train door, just CLICK and POP, the doors open. Hey you know that part..”

“With the tits?”

“YEAH FUCKING MASSIVE TITS HAHAHAHAHA”

He goes on to talk about scenes from the movie, mostly the bits about boobs and farting

Eventually the train arrives and he runs off to the rear carriages, and another Gosford train chapter is written into history.


Tuesday, January 3, 2012

2012, Looking Ahead


I've never liked the idea of New Years Resolutions.

To me, they're an excuse for people to feel good about their vices for a short period of time, give them some feigned power over their lack of willpower or otherwise. But in the end you'll still be just as fat as you were December 31st.

I'm not a skinny guy, and if I could make some deal with the devil to drop 50 kilos in a night, I would think it over. But I'm not stupid. Promising yourself to lose weight on January 1st doesn't give you any more power to do so than if you did it on one of the other 364 days of the year. If you're determined enough, and strong enough, then you'll get there in the end.

I'm big, I know it. I eat healthy enough most of the time, but I eat massive proportions and skip breakfasts constantly. And when I do rarely eat breakfast, it's usually something stupid like a packet of twisties. Waking up at 5:30am will do that. Who eats when they're barely awake? But it's a problem I know I should tackle, and I'll tackle it on my own terms, none of this New Years shit.

But this entry isn't about my girth, it's about setting goals. Now goals I like, goals give you something to aim at in your future. Resolutions? They're bullshit. But goals? Goals are worth having.

It just so happens that the New Year isn't the worst time to refresh your list of goals, everyone is off work and we've all seen too much family to care about, it gives you time to have a look at where you are, and what you want to do. So I went over in my head what I'd like to achieve in the future (not necessarily to be completed by Dec 31st this year) and I came up with what I'd like to think is an achievable list.



The ordering of my list is less about time goals, and more about priority revolving around money. Work goals take priority over home goals. Why? Because I owe to banks and companies nearly what I make in a year. Money talks unfortunately.

Finish those games!

I've mentioned them before, in fact they're the focal point of the new direction my blog is taking. The three semi-work semi-personal Flash Game projects I've been working on. I'm happy with the progress they made pre-Christmas, but disappointed in the lack of work over the break. I always promise myself and others I'll “get it done during my break”, but I forget that, given my lack of free time during the work week, I have movies, books, games to catch up on. But no matter, progress is progress, and I'm determined to get these done, published, and out into the world of rabid flash gaming fanboy mania. Have you read the Kongregate forums? It's the Internets version of a dark alley in a rundown city.

Write

I write when I can, and I write a lot. But my work never sees the light of day. I'm my own toughest critic, and I deem nearly everything I do to be utter trash. When I do manage to send some work out to fellow writers and colleagues, I get positive feedback, but it never eventuates into anything.

That being said, I need to suck it up and just get a story out there, no matter how big or small. I am going to have a fully finished and polished work of literature out into the open. I need to kick my children out of the nest.. because I'm a bird now it seems..

I am also going to strive to update my blog more often, and less technical. I noticed that the blogs where I talk about my experiences with programming are more well received than the blog where I got into the finer points of programming. Which makes sense, 95% of my 5 readers aren't from programming backgrounds. So I'll write more about the emotion, less about the algebra.

Read more


Reading is brilliant, I need to do more of it often. I have books everywhere, and I have no excuse not to read them. Books can transport you into a magical kingdom full of Elves (Tolkien) or Whores (Martin), or they can impart wisdom onto you across any subject matter. I just finished reading about the Nuremberg Trials after WW2, and I want to punch a Nazi in the dick. That's the power of books!

Do one of the top three daily


2011 was a long tough year, and what made it worse was the lack of anything creative done on my end, causing me to slump further into a depression. When I'm not creating, I feel like I'm wasting my life. Sure that sounds a bit over the top, but it's true. There's a saying about fitness, “no matter how little you walk, you're lapping the people on the couch”. The same can be said about anything. If you're doing something, no matter how small, you're still miles ahead of the braindead git watching Frasier marathons on DVD for the 6th time in a row. I love movie and games and tv and staring at the wall as much as the next person, but if I focus even a single hour a day on something creative for myself, then I'm making progress towards my goals.

Lose weight
Damn straight


I'm a chunky monkey, there's no denying it. Sure I badmouthed the resolution of the same nature, but as a goal, it's a good thing. For the sake of my health, my wife's health, and any potential children we're trying to have, I think it's important that I get my arse outside and go for a stroll. And no more twisties for breakfast....

- Tom




Saturday, December 17, 2011

Tom's Dev Blog #3: Mobile Mania

"Flash for mobile is dead" - Lazy Journalists.

About a month ago, Adobe announced they were ceasing development for Flash on mobile browsers, and many dimwitted bloggers who like to think of themselves as journos flooded the internet with poorly researched articles, ringing the death knells for Flash.

Let me dispel two myths.

1) If you blog from your mum's house in your underpants, you're not a journalist.
2) Flash for mobile browsers is dead.

Mobile BROWSERS. Not mobile DEVICES.

What's the difference? Immense. If you open Safari or Mercury or what have you on your mobile device and go to a site that uses flash (Newgrounds for example), you'll get an error. That's Flash not working on your mobile browser.

Using Flash, in combination with a little powerful framework called AIR, you have the ability to make an app. And how often do you use an app over your internet browser on a mobile? I'd wager a guess and say 9 times out of 10.


And that's where I have come in.

For the past month I've been working on my first Android and iOS app. It's an e-reader for a children's book series, that also includes a fun game, some factoids, and delightful voiceovers. Too lazy to read a book to your kids? Watch this space with less than 5 bucks in your hand, and I'll give you 24 self reading books in an app that will entertain your little ones for hours. For legal reasons (I assume), I'm not going to say much more on the app, as it hasn't been released yet. So just keep an eye open for updates.

The transition from Flash SWF programs to apps has been a bumpy ride, but since when has anything worth doing been easy? Any Flash dev has the ability to become an app developer. And that's where the big business is lately. But let me give you some pointers.

1) Optimisation and memory management.

This is the main key part for your development. You're making an application for a very limited device. People like to think they're carrying super computers in their pockets, but the truth of the matter is, they're still carrying something slightly better than a calculator (possible exaggeration). When making games and animations for browsers, your users are on chunky powerful computers, and you can afford to get messy with your code. Slow downs occur but they're barely noticeable. But on an app, if you're not disposing of assets properly, they build up. And you can see the results instantly.

You need to pull up those slack programming underderps and improve your technique. Check out this article on code optimization for a starting point.

2) Bitmaps over Vectors, and Blitting.

Vectors are great, they're smooth, easy to manipulate, but they can be memory hogs, as they're constantly being redrawn if you move them even the slightest. Bitmaps on the other hand, are static images, and flash knows this, so it doesn't bother redrawing, it just moves it as the flat image when you need to.

If you're using static images that barely do anything but move within the X,Y planes, with filters and blurs and shadows, do yourself a favour. Open photoshop, apply all those filters in there, save as a JPG (or PNG if you need transparency), and chuck it in your flash project. You'll see an instant jump in improvement. These iPhones and iPads don't need to constantly redraw something that just sits there.

Blitting is a technique I was introduced to a few weeks ago, and it's a great alternative. Especially for animation. Anyone familiar with sprite sheets will understand the concept in this article. But I recommend it for anyone. It can be a little complex, but it's a godsend for Flash apps. It stores the images into resident memory, so when you need them you don't have to create object, your object is waiting for you in the background to jump onto the stage.

Example of a sprite sheet (or object pool) generated through blitting.

Another trick is if you have large images (say a background), drop the size of it in half, and scale it up in code. It may lose some image quality, but it will free up some much needed memory.

Some minor tips:

- Stage Quality = Medium or Low, with code you can change it on the fly. So in events with a lot of animation, drop to Low. But Never never use High, you can barely see the difference between Medium and High anyway.

- Enable GPU mode over CPU for iOS apps. You'll get a nice big change in quality and frame rate.

- Compromise. If you're trying something new, test it on your mobile device as soon as possible. And if there's a memory hit, start making steps to bring it down to an acceptable speed. In this game I'm working on I had to sacrifice certain animations and place in static images instead. And I think I was the only person who actually noticed the change. Keep it simple and you'll come out of this with most of your hair intact.

Developing for mobile apps has been really fun, and really annoying at the same time, but it's a surefire way to give your programming skill a boost in the arm.

- Tom







Friday, December 9, 2011

Tom's Developer Blog #2: Captain Hindsight

An unspoken rule of the business world is that, if a project has a deadline, 90% of the work will be done in the final 5% of the time allotted. It's the same as when you were in school, no-one ever did their homework the first night it was given. You always did it 6pm on a Sunday night, cursing yourself and promising not to do it again.

But if you were like me, you broke that promise.

"Why do something today that I can do tomorrow?", procrastination is a part of being human, you'd be hard-pressed to find anyone who doesn't procrastinate. Sure some people are better at handling it than others, but everyone does it. One of my goals with this fresh new outlook on my professional career is to procrastinate less, it's damn hard.. but in the end it should pay off.

I've been reskinning a client project, to make a iOS sidescroller game. The problem is, I didn't aim for it to be an iOS game in development. Which makes it a little hard with the translation, nothing some elbow grease won't fix though, I've become quite efficient at cleaning up code and converting it to be as much Object-Orientated as possible (I've picked up a tonne of tricks lately to really belting out classes and reusing as much as I can).

The simple "web to iOS" transition is fine. But my problem is that at the end of this project last year, I slacked off. And boy did I slack big time. Here's a snippet....


For those of you unfamiliar with the negative points in that screenshot, let me highlight them for you.

1) 1950 objects in the library, it's my own fault for bringing in an Illustrator file directly into Flash and not grouping objects together, and I had a bad habit of not updating the resources correctly. So when the artist (a talented man mind you) gave me some updated images, they went straight into "New Layer", instead of copying over "Existing Layer". I did a quick check, in a project that has ONE main character, I've copied him 15 times, instead of using the same one object. That's just upsetting.

2) Naming conventions. I SUCK at naming conventions. There is a movieclip in that library called "lolgeoff". It's a picture of a tree.

3) (Unseen), my code is a mess. Sure it works, but it's poorly documented, and most importantly, it's not all in classes. When coding in Flash for as long as I have, there was a transition from pure timeline code, to the more modern Object Orientated Class File System. This project used both. That's a goddamn nightmare when looking for a stray piece of code. I have to rummage through movieclips AND class files, some with clashing functions, and try to weed out what the absolute crap I was doing.

I'm a good programmer, but I have bad programming habits. Find me a developer who doesn't. By talking about it in an open forum I hope to air out my dirty coding laundry and use it to better myself. I know EXACTLY what I've done wrong and I'm taking steps to fix that problem in the future.

In hindsight we all know what we should have done, in order to better ourselves we need to stop relying on "should of" and instead focus on "will".

- Tom

Archive