Feb 15 2008

Closing the Windows

Tag: Personal, ProgrammingAdam Wright @ 7:28 pm

After Windows Update toasted my Vista install last week (Twas impossible to login as the console,I could only recover by RDCing in and using System Restore), I bit the bullet and bought an iMac to use as my primary desktop. I’ll keep the Windows machine around for games and some development work.

Overall, I’m very happy (but then, I’ve been a Mac laptop user for years). The only problem is the TN panel screen, which has an annoying top to bottom gradient (some colours get very desaturated as you move down the screen). It’s not ideal, and less than I’d expect from Apple. However everything else is perfect, and as I’m no graphic designer, I can afford to live with it.

My first tiplet (which is no doubt very obvious to most people, and maybe even in the help files) is that you can save Automator workflows as application bundles. It’s significantly easier to achieve some small tasks (which don’t have control structures) with this mechanism - I currently use it to read me the RSS news headlines when the machine alarm goes off. Yes, this could be achieved with more traditional programming methods, but occasionally, graphical workflow tools are useful.


Jul 29 2006

Attending “Any Questions”

Tag: Personal, PoliticsAdam Wright @ 6:07 pm

I had the opportunity to attend the BBC’s live radio broadcast of “Any Questions†last night, which turned out to be an interesting experience (For those not in the know, Any Questions is a weekly political discussion show where the BBC round up politicians and other prominent public and business figures to have questions on recent news flung at them by the mob). On the practical side, it’s all very straightforward ; you’d never know the entire thing was being beamed live to millions of people. You arrive about an hour early and submit the questions you’d like to ask (if you don’t have any, that’s fine), sit and chat with your neighbours for 20 minutes then someone (in our case, a R4 continuity announcer) comes out to give pithy anecdotes and put everyone at ease.

After everyone’s actually listening, the producer comes out to explain how everything works and declares who’s questions were chosen - these people are then shuffled to the front row. Then the panel arrives, a test question is asked to make sure all the microphones work, and the show begins – they broadcast the news live into the room, and as soon as it ends, the panel and ambient microphones become live and the broadcast begins – all very simple really, and discreetly low tech.

It’s worth noting that if you don’t ask a question the most you can contribute is heckles or applause – the ambient mikes can’t pickup audience responses. Because my views on this week’s news are fairly commonplace, I didn’t bother to submit a question but rather strategically positioned myself at the back so I could observe the slice of the population that attended, and their reactions to the questions and answers. Alas, the demographic was exactly as I’d feared – the mean age must have been well over 60, and 95% conservative.

The height of the evening came when the woman who’d asked a reasonable question about increasing local resources before building new houses to solve the current house price crisis (whereby anyone who doesn’t already own a house can’t possibly afford one) got her right of reply. Her comments ran to the tone that “anyone without a house should just move north where the houses are cheaper†are so infuriatingly elitist and selfish that I almost ran down the aisle to cease the mike. Playing in local politics around here is such an exercise in frustration, it’s little wonder no few under 40 actually bother.

Regardless, it was a worthwhile slice of local political opinion, and my thanks go to the BBC for continuing to run this sort of program (in the face of “Celebrity Brothers Love XFactor live”).


Jan 03 2006

Happy New Year and all that

Tag: Personal, UncategorizedAdam Wright @ 9:45 pm

Well, it transpires I’m terrible at keeping this thing up to date. All it takes is the equivalent of a full time job simultaneously with a full time degree course, social life and family ties to make me stop writing a weblog. Who’d have thought it?

I’m not going to subscribe to the cliché of posting any New Years Resolutions here; such an indulgence would be a waste of time for all concerned. However, in my original spirit of keeping only things people would actually be interested in, I shall reveal one: For several years now I’ve wanted to learn Latin, and now I actually intend to.

I did make a start a couple of years ago and progressed a little way, until the real life gremlins appeared to foil my attempt. This time, I’m resolved to make a better effort. Additionally, rather than signing onto a Latin course at university, I’ve decided to “go it alone”. Armed with suitable textbooks, dictionaries, audio guides and an inexhaustible well of new years resoluteness, I’m going to complete the equivalent of a high school Latin course. Oh, and I’m going to write about it here. Look forward to part one shortly, or unsubscribe now!

I don’t want to carry baggage into 2006 with me, so consider all currently unfinished article series dead - I suspect they were of little interest or value anyway. If anyone has any questions regarding anything that’s now hanging in literary limbo, just drop me an e-mail.


Aug 11 2005

Reapplying the Decal Annex: Answering the comments

Tag: Code, Personal, ProgrammingAdam Wright @ 11:26 pm

My apologies for not getting part 5 of “Reapplying the Decal†up today, but I do have a (pathetic) excuse. I was in London for the majority of the my time, and in what I had left for writing, I decided that one more part wouldn’t cut it for the “memlocs†section. Expect to see part 2 of a total 3 or 4 tomorrow!

To at least write something, I’ll answer a few of the comment questions. Anyone not interested in what the comments have said, feel free to tune out now and return for the article on Friday.

First of all, a myriad of thanks to those who’ve left supporting comments, and I’ll even spare a couple for those who’ve don’t think this was particularly useful. Criticism is always useful; as long as one can extract the barbs it often comes with. I didn’t expect a lot of interest when I started writing these, but I’m glad that people found them interesting.

Regarding personal questions, I don’t normally like to talk about myself as I prefer to let my work speak for me. Nonetheless, for Kyle, no – I’m not a teacher nor have I ever formally taught. At the moment, I’m a mature student (over 21) majoring in Mathematics with a minor in Computer Science.

As for those wondering about a donations link, don’t expect to see one on my site anytime soon (I cannot and do not speak for the rest of the developers). I’m fortunate to be blessed with a comfortable life, and I do this purely because I find it interesting. On the remote chance that something here really provokes the need for a fiscal contribution, there are many good charities and groups that I’d much rather see the money go to. I’ll value anything given to them (or other good causes) much the more than any money you could ever give me. Oh, and if you do donate because of something I’ve done, please send me an e-mail that we might share the warm fuzzy feeling.

Now, the meaty technical questions and advice regarding memlocs. I should first say that I’m not overly involved in finding the function and object addresses at the moment – Hazridi has shouldered the bulk of this work, and he’s had a much harder job than I have by an order of magnitude.

To Joseph Bruno, we have used a pattern matching technique in the past to help locate functions changed by only address additions (and other minor alterations). At one point, someone (alas, I can’t remember who) wrote a tool that would find all the functions for us. But, as you say, this sort of device is vulnerable to failure when significant changes are made, or when the compiler is updated. The best of my memory says we’ve lived through two compiler updates so far - VC6 to VC7, and VC7 to VC7.1 We might have also suffered an optimisation flag change (which is just as damaging), I’m sure one of the other developers will remember far better than I. The idea is certainly sound, and I’m Decal will use it again when the client is stable.

To Miss Stepahnie, it’s an intriguing idea, but I’ve yet to find any decompiler that will produce anything useful from compiled C++. We have no debug symbols and compiler optimisations are used aggressively in the client, both contributing to a soup of code that, whilst in theory is reversible, would produce C that wouldn’t be much more better than assembly itself. The one to many instruction mapping you get with 3g to 1g alone would be a big issue (we’d have to go back to the assembly to know exactly where, and in what state we want to perform the call). However, I love being proven wrong so if you know of one, I’m sure we’ll gladly look at it!


Jun 19 2005

The home stretch

Tag: PersonalAdam Wright @ 6:36 pm

Six down, three exams to go. I’ll be all finished by Friday, and can return to the clinical embrace of development. A homecoming to look forward to!


Next Page »



You are viewing a mobilized version of this site...
View original page here

Mobilized by Mowser Mowser