Saturday, 19 August 2017

That Moment...

You know that moment when you see this...


And the mage rolls need....

Yeah, that's the kind of day I've had.

More World of Warcraft topics to follow...

Thursday, 10 August 2017

People: Email & Names

When you interact with someone, say face to face, you get to gauge who they are, what they're thinking, the subtle and many clues from body language, posture, intonation and even just where they're looking tell you an awful lot about how that person works, how they think, whether you agree with them.

However, when you're communicating digitally, via e-mail or text, you loose this personal grip.

One has to therefore rely on the face value of the information presented, is it spelt correctly, is the grammar correct, have they thought out the reply and addressed all your requirements from anything you sent them?

In my case I am often asked things like... "What do you do to better yourself?"... "Or have you done anything of note recently"... And I'm asked by people who have read my blog, or CV, or just know me... And I often say "Have you read my book?... Have you read my Blog?"

This kind of interaction puts me on a huge downer, why should I bother with this person if they've not performed what I consider the basics of due diligence?

Then there's my huge pet peeve in E-mail... I send a mail... "Dear whoever, bla bla... Xel"... They reply... "Dear Zel"...

No, not "Zel"... "Xel"... spelling, and it's not just spelling, it's that you've been given the answer right in front of you, if you can't have been bothered to take the last thing you read, and put it into the first thing you write, you're being lazy or worst still you're being purposefully obstructive and annoying, because this grates on me so much.

I once worked with a lady called "Grace", she hated being called anything else, "Gracie", "Gracy", "G-dog"... All really, really annoyed her... and people did this day in, and day out, her final response was to stop communicating with these people with their own names... Even our co-boss, who was a "Mr Khan", he became "Mr Purple-Whipple-Snapple"...

When he queried this, she said "if you wish to call me G-Dog, I will call you anything I like also".

It was the perfect most polite and poignant reply on this matter ever seen, but it took a silly outrageous example to make this clear, if you can't call "Robert" a "Robert" on the next page, or a "Susan" a "Susan", or even a "Xel" a "Xel" don't reply.

Wednesday, 9 August 2017

Development: Silly Things Said in Software

"Rather than get away from the concept of the password required completely, the password is hard coded as 'password'"...

I literally just heard this statement, from a senior software engineer ten feet from my desk to another engineer as they consulted with one another about the system they are working on.  And I simply can't let it go... So here I am to have a moan....

The problem with this kind of thinking really annoys me, they could make passwords optional with configuration, meaning the option is present and supported.  They could remove the passwords altogether, as 'password' as a password is not a password at all, it only leverages an attacker to want to rip the soul from your data and scatter it to the four winds.

But more than that, remove the password if it's useless code, don't complicate the system, don't exacerbate the effort to maintain the code.

There are so many faults in the way this engineer is thinking I'm quite pleased I don't work directly with them; and luckily - as they're departing these fair shores in a fortnight - I never will.

Aaaannnnnddd... Relax...

Seriously though folks, don't over complicate things, if you use good source control you can resurrect sections of code from the previous revisions easily, so get drastic, get smarter in the process, chop and cut your code to bits.

This video from the 2 1/2 minute - ish - mark really shows you the process from someone else's eye... and I agree with him, when he talks about thinking about what's beyond scope, however, this also needs to be considered from the point of view of maintaining the code once released.

Monday, 7 August 2017

Life Tip...

Top tip... If you run a business... And print people invoices... Learn to count... Tip ends.

This story is to be continued....

Wednesday, 2 August 2017

Development: Design, Prototype then Code

When I were a lad, I were taught to use flow chart stencils....


I was shown how to write data dictionaries, to thought-cloud through the possible data members for these dictionaries, to define the mutable and non-mutable points and abstract away the common elements between these definitions in order to design the code to be written.

All pretty much on paper, before you sat before the computer.

The reason being?  Paper was cheaper than electricity, and it took a long time to compile and recompile, and then even longer to debug, a program.  Bugs got hidden and only appeared when testing took place.

And if a bug ended up in test, which could obviously have been caught on paper, long before it reached the coding phase, then you got egg on your face.  In a nice way, you all knew you had to do more than cut code.

Unfortunately Moores law exists, a blessing, and a curse.  As I feel it's made the quality of software design fall, as people can afford to code and compile and try before thinking.

No-one I work with, certainly no-one immediately around me, designs anything on paper, or performs thought exercises on the task before diving at the keyboard.  Event when they have dived at a keyboard they're not prototyping, they're immediately producing code for release use, and it's starting to show.

As such, I've instigated a new rule, "if you have to prototype, it must be in a different language to the release code", the language I've stipulated is a python for system scripts or data processing tasks, and C# to replace any windows C++ being produced.  For C# I'm still thinking, but Java might be the best option...

This realisation came to be from the back of my mind, and it came from experience, however it seems other authors have had thoughts along these lines:

"One trick to ensuring your prototype code isn't obliged to become real code is to write it in a language different from the one your game uses.  That way, you have to rewrite it before it can end up in your actual game" - Robert Nystrom.


Tuesday, 25 July 2017

C++ Multiboxing : World of Warcraft

I'm a huge fan of the early World of Warcraft games, I make no secret of this, and spent far far too long playing the game when it came out.  I enjoyed the game into Burning Crusade and enjoyed PVP during Wrath of the Litchking, but I think somewhere along the way there Blizzard lost their mind.

And way back in 2010, on the then in vogue talk show "Shut Up We're Talking", I predicted where I thought things would go, and that looks pretty much to be where the game has gone, it's been dumbed down, and the MMORPG inflation on damage and stats has become insipid throughout.

As such, I crave a Vanilla experience, and wish Blizzard would allow the free usage of the Vanilla assets (mainly extracted client data) for all the server emulations out there - Nostalrius and Felmyst come to mind.

Until that happens however, I'm stuck exploring the old game myself, alone... Yes, I still have the original client DVD's I purchased in my battlechest and armed with CMangos, I have been building up my old multiboxer from 2014.

The result tonight is my first Boss kill, Scarlet Monestary Graveyard run... Not perfect, the summoning by "Haunting Phantasms" really screwed me up, my mages won't decurse on command, and the priest keeps pulling aggro as her fade is slow... but other than that, we got somewhere, and I really enjoyed myself...

Click to enlarge.

You can see on the detail screen the top left client is the one I'm playing the warrior, I am tanking... Bottom right is the priest, the only healer, and the group is a warlock (top right) and two mages in the smaller windows center bottom.

The command prompt window is the multiboxer, it simply takes key presses of one key, say "numpad 5" and delivers them to the other four clients running as windows key down messages but of another key code.  So, 5... Hence making the fifth item in the action bar cast.

Shift and 1, will select action bar 1... etc etc... I have a myriad of little command helpers.

However, the boxers are totally dumb, they are only being controlled by myself, at my keyboard, alone.  No hacks, no injection, no memory scanning, just me and my eyeball mark 1.

My ultimate aim is to run Scholo - I love Scholomance!

Tuesday, 18 July 2017

Speak More Slowly Please

I'm English, this means I speak English, or at least a dialect of it... This mere fact has furnished me with the ability to communicate to a myriad of other people, of different nationalities and inclinations.

However, it completely alienates me from the French.

Well, a certain sub-set of French speakers, whom simply are rude... Now, I'm sorry, but these people exist, and good on them, they want to protect their beloved French language from the likes of me, coming along speaking it with a terrible rich British Midlands accent.

I accept that.

I'm not trying to compose poetry in French, I'm just trying to communicate with someone, so when I say:

"parlez plus lentement sil vous plais, je ne pas parlez Francais bon"

I think I'm asking them to speak more slowly please, as I don't speak French very well.  I don't expect them to stop the conversation completely, roll their eyes and then turn their back on me.  That's rude.

And this wasn't an isolated case, since the mid-90's it's happened a few times.  And every single time it annoys me more.

When a French person speaks to me with strongly accented and semantically incorrect English, I of course listen to them, I'll even take a stab at working out what they were intimating, I'll smile and maintain eye contact, reassure them they are okay to just try... Very much a "we'll get there together" feel to the conversation.

Some French speakers however... Just Rude.

There, I've said it, I'll leave this here....

This post also may give away why there's been a small break in posts for the last half month... No I've not been anywhere, but I have been extremely busy.