blindZA.co.za logo - white text on black background, with white border - and red braille version hovering in front of normal text
Training material etc. Web development Web content assessment Python GUI development

BlindZA.co.za - Work related

Training material etc.

While have no formal qualifications as such, I have been working on computers, including becoming involved in programming rather early on, since roundabout 1983, before there were any of the real, modern implementations of what we call PCs available as such, and me and my friends started out by just getting hold of all the tutorial material we could lay our hands on, and then testing/teaching ourselves, and each other all sorts of things related to various aspects of computer usage, including hardware configuration/maintenance, common software usage methods, technical aspects of computer usage, including programming, usage of some bits of rather specific aspects of software packages, and operating systems, etc.

This also involved my first real/formal job being running a software support centre, where you commonly would get people calling on you to explain to them how to work through various processes, step-by-step, and it was to your own advantage to make sure that you actually instructed them in such a way as to make sure that they either figured it out themselves, or at the very least either remembered the solution somewhat permanently, or in the future, would remember, at the very least the typical problem-solving procedures to make use of to then figure out future solutions themselves, so although it was referred to software support, we always tried to approach it as a form of informal software training instead for what it's worth.

Along the same lines, when I was working more formally as a developer, if someone asked me to explain to them how to handle a specific task, I would, again, rather help/instruct them on how to approach the whole process in such a way as to actually figure out the solution, to a certain extent, on their own/by themselves, so that the next time they would be more likely to be self-sufficient as such, if that makes sense.

Either way, that means that have, from the beginning, tried to rather train people how to train themselves, as opposed to just telling them immediately/directly how to perform an immediate/specific task, and this is still somewhat involved when it comes down to someone asking me for a solution to a technical issue, where, at the very least, I will make sure they understand how I then approached solving it, the means I made use of, and why it then applies as the solution to the issue itself.

For example, a rather simplified example is that since Google's accessible search interface ranks search results based on their content, rather than overall look and feel, etc., as long as you make use of search term aspects like phraseing - enclosing a phrase in " characters, excluding words or phrases from search results using the minus sign (- character), etc., you can narrow down the then resulting search results to include, hopefully, way more meaningful search results as such, and when I pass some or other resulting solution to a technical issue on to someone else, I will generally try to explain to them how I found/came across the result, why it was as such found via the accessible search interface, etc., but anyway...

Web development implementation and technology

I have in the past primarily been involved in web development, data integration into webpages, web-based applications, like shopping carts, online newsletter maintenance, somewhat situation specific content management systems, etc., in the past, classic ASP, ASP.Net making use of both VB.Net and C#, and then primarily making use of Microsoft SQL server to maintain/host the database engine, but nowadays, primarily making use of PHP and MySQL data provision.

I also make use of a javascript module called JQuery to implement interactive client-side interface elements, including forms data entry validation, real-time sound playback, ajax data submission, and real-time/client-side content manipulation etc.

Below there are a couple of relatively simple examples of some of the above, but these are primarily experimentation examples, for what it's worth.

Web content assessment

As both a web developer, who works on web content generation, and interaction, as well as a 100% blind/visually impaired end-user on multiple platforms, I assist people in assessing the usability of their websites, as well as helping them compile lists of elements and items that might not match the web-content-accessibility-guidelines.

The main thing is, however, since I am myself a 100% visually impaired person, and since am in contact with multiple groups and communities of visually impaired people from all over the world, I can also help with regards to real, end-user comfort levels with regards to web content usability and interface interaction.

Python GUI development

In terms of non-web-development, I am currently primarily focusing on python programming language development, partly since Python itself is rather cross-platform, and the apps can thus generally be run/implemented across various platforms, or operating systems, while sometimes just requiring a bit of tweaking of the interface itself to make them comfortable/usable as such, and aside from that, I am rather pleased with things like python's handling of iterable variable/object manipulation, etc., and there are a lot of open-source modules out there to be used for the implementation of various types of interaction/interfaces, and while am currently primarily, myself working on various windows machines, I do also have all the tutorial material relating to specifically implementing python applications on something like a symbian operating system mobile phone, etc.

I have also implemented specifically accessible output, like TTS, and some stereo sound playback manipulation in some of my python apps, thanks in part to cross-platform python modules from the Mercurial repositories index, but aside from that, am also specifically making use of SQLite database engine to store client-side/local information, have put together my own form of HTML report generator module which can also implement as a form of content-management application/website generator/renderer which can then also be re-used in other python apps easily enough, and am also, currently busy building my own form of a database management system, sort of specific to the MySQL database engine that gets used to host data for quite a few online web applications, but as a form of getting into python in the first place, I have also already put together my own sort of interactive fiction or role-playing game engine - both back and front ends to let you generate maps/content you could share with other people, or just use to interact with such content, once they've been generated, and aside from making use of these as a form of playing games, you could also easily enough use it to generate and make use of interactive tutorial material, by focusing on certain aspects of the then rendered interface - for example, you could generate virtual versions of real-world environments, either of the physical world, or possibly pieces of software, for example, and then use this engine as a form of virtual touring/exploration, if you get my drift..?

I am also continually adding on to the possible environment definitions in this interface, including adding things like sound effects, results linked to specific situations/activities, etc. as well - this one is ongoing/continually changing.

Another sort of ongoing project is that I am also busy putting together my own form of a relatively simple sound output mixing application, where you can do things like implement multiple sound tracks, with multiple sound clips inserted into all of them at various time points, and can then apply relatively simple effects, like panning, playback speed modification, looping, volume adjustment, etc. to either single, specific clips, or to groups of them, and you should then be able to, easily enough initiate playback of the whole mix to then record the combined output thereof, and this is primarily since thought it might be nice to have a relatively simple, usable interface to do a relatively simplified bit of sound mixing as such. This one is still under initial development, but a usable test version should be available to check out shortly.

I am also busy looking into/working on versions of various games that are either sort of real-world simulation items, or are based on some rather old computer games that remember playing a long time ago, on somewhat outdated computers.

The examples below are primarily links to the compiled windows versions, but could also try sending you a direct link to a version that might work on other operating systems, like mac or linux, and have myself only tested/tried these out on certain versions of the windows operating systems, but that ranges from windows XP 32 bit, to windows7 64 bit, so I think they should work alright on most common instances of the windows operating system in any case, and while these are not really too serious in terms of subject matter it has more to do with me making use of them to get comfortable implementing real-time background threads/processes, data/information manipulation/storage, etc. as well.

If you wish to request any further bits of sample code, different/variations of output formats, or more information about specific items of possible interest, or something like a copy of my actual CV, and if you don't have any other contact details for me, you are welcome to just fill out the contact form and I will get back to you shortly.
Back to main page/site