Hello Joseph,
A friend sent me a message, copied below, that you posted to another list.
I think much of what you said for that list could apply to the Humanware
note taker also. I have a question though and my personal programming
experience is too far out of date to be of much use to know for sure. I
did programming on NCR Century series main frame computers back in the
1970s using NEAT_3 and Cobol. I programmed Apple 2 series computers in
Applesoft floating point basic, integer basic, and even did some 6502
assembly. In a few cases of short machine language code subroutines I just
used 6502 op codes and direct entry of hex addresses by hand and avoided
even having to run it through the assembler. I only did a very few basic
programs on MS-DOS years ago and nothing under windows. My question
involves the game code interpreter in the Humanware note takers. Just how
powerful is it? If it can run all of those add on games, could it be used
as a cheap and dirty SDK for writing non game programs or is it too
limited in function to be of much use? If it can be used this way, where
would we look to get programming information about it? I would guess the
best situation would be to have a fully implemented SDK but maybe some
kind of run time basic interpreter would work in the short term to give us
the access to programs we want to run on these note takers that are not on
the table for Humanware to provide. Even the old Blazie Engineering
Braille N Speak supported external add on programs. Dan Greene, among
others, wrote several powerful programs for that device. Marc Mulcahy
wrote a basic interpreter for it and several of us wrote small basic
programs that ran fine on it. If the old Blazie note takers could have
this kind of programming support, why not newer more powerful note takers?
Richard Ehrler
----- Original Message -----
Subject: SDK Article
From: "Joseph Lee" <[email protected]
Hi folks,
Sensible Potential: Braille Sense and Possibilities of SDK
Joseph Lee
University of California, Riverside
August 17, 2009
Introduction
Once I was walking down the road leading from residence halls to
campus,
reading a book on an assistive technology hardware. A friend of
mine joins,
so we started chatting. At one point, while we were walking
around the
engineering complex area, my friend, an engineering major, asked
me what the
machine I am using was. "It's my computer," I replied. "So what
can you do?"
he asked. "Well, I can do anything with it," I said. "I can write
program
code, listen to FM radio, browse web wirelessly and so forth."
Then my
friend asks, "Can you write programs and run on your machine?"
"No," I
replied. "I cannot execute programs on it."
What does this scenario mean? It means that we have a functioning
device,
but there is not way of expanding it to suit our needs. And this
is where
the question of SDK (Software Development Kit) comes into our
equation.
What is Software Development Kit?
Software Development Kit, or SDK, is a set of tools designed to
allow
programmers to write programs for a device or an operating
system. These
tools allow a software developer to create, debug and release a
program in a
way that allows him or her to have flexible control as to what to
write.
These tools include program code editor, compiler/interpreter,
debugger and
so forth.
For instance, one can write a program for Windows using Windows
API
(Application Programming Interface), such as screen readers,
media players
and so forth. Or we can use an sDK to see if a software version
that was
released for one OS is compatible with newer one or not via
porting it.
So what does it have to do with Braille Sense family?
Absent in English builds of Braille Sense family is called
"Contents," an
option available under Utility Menu that llows third-party
programs to run
under Braille Sense. This allows various possibilities to happen
e.g.
running a document converter, advanced calculator and so forth.
As of 2009,
the only real implementation of this feature in south Korea is a
Bible
reference software written by a Korean minister which turned out
to be
popular among students and enthusiast users of Braille Sense.
Another
example is a database add-on which lists programming codes and
lyrics for
Karaoke machines in South Korea.
Is there possibilities for English users?
In my opinion, if SDK for Braille Sense is ported to English
builds, we will
see massive demand for Braille Sense. This has marketing,
economic and
productivity potentials for both HIMS and GW Micro.
In terms of marketing point of view, having a blindness PDA with
advanced
media functions, coupled with ability to run user-written
programs will
appeal to enthusiast users. For instance, as a computer science
student with
interests in assistive hardware, having an SDK will allow me to
"experiment"
with Braille Sense up to the point of publishing technical
information as
well as useful programs such as Unit Converters, PdF support and
so forth.
In economic perspective, this marketing strategy will ensure
continued
financial success for both gW Micro and HIMS - to allow these two
companies
to collaborate and develop innovative products in the future.
In terms of productivity, the inclusion of sDK will mean useful
software. In
other words, the suggestions that we have been seeing on thist
list will
come to reality (some of you may recall that I wrote the same
sentence a
while ago on another list). For me, I can imagine tens of
hundreds of
programs written for Braille Sense - some of them useful, while
others
providing fun, such as games.
But be careful with SDK.
One of the research topics in computer science field is computer
security.
Every computer system has at least one bug which, if exploited by
hackers,
could lead to security outbreak. Braille Sense is not an
exception to this
rule. Even though we say that Braille Sense is secure, the
inclusion of sDK
will mean a slight possibility of malware appearing on the bS
platform
(especially if written in C++ code, as bS is based on). Also,
because
X-Scale processor is a 32-bit architecture, a range of scenarios
may occur,
such as incompatible code, data misalignment and so forth. Also,
some wrong
implementation of SDK-derived code could have serious
implications, such as
memory leak (both physical and virtual), spaunning unneeded
threads to clog
CPU usage, triggering unnecessary process allocation to use
available
process space (up to process #31). As to all process limit and
virtual
memory, I'll allow expert programmers to have a go with it.
Those are some of the side-effects of sDK release. However, if we
want to
see massive adoption of Braille Sense, I view that the current
SDK in Korean
should be ported to English builds as well.
Conclusion
One of the fascinating aspects of computers is the ability to
tell the
silicon chip what to do according to what a user wants. This is
the art and
science of programming, and an SDK makes this imagination spring
to reality.
Currently, Braille Sense has an sDK in Korean, and few programs
were written
specifically using this SDK for South Korean market. If the sDK
is ported to
English builds, we will see so many possibilities materialize -
all from our
brain. Thse include useful programs, fun games, and a few number
of malware
which will turn out to be beneficial for gW Micro and HIMS
developers to fix
bugs.
Some of my possibilities.
With the SDK, I imagine the following things will come into
reality:
.. Ultimate Calculator (Calculus - single and multiple
variables,
unit conversion, sequences and series, statistics and so forth)
.. Document converters (PDF, docx and so forth).
.. Spreadsheet (Excel).
.. Benchmarking tools (battery capacity, detailed
hardware monitoring
tools and so forth).
.. Advanced config software (changing system sounds,
screen
brightness, serial debugging and so on).
And so forth.
Hope the article was helpful here.
Cheers,
Joseph
___
Replies to this message will go directly to the sender.
If your reply would be useful to the list, please send a
copy to the list as well.
To leave the BrailleNote list, send a blank message to
[email protected]
To view the list archives or change your preferences, visit
http://list.humanware.com/mailman/listinfo/braillenote