My core research interest is in raising the abstraction level of
mobile
software development through design and implementation of
programming
languages.I am also very enthusiastic about the use of mobile
phone
technology in the developing world.
I am currently interested in the following research areas:
- Programming language engineering (I strive to address
limitations
of programming "which
force the programmer to think like the computer rather than
having the
computer think more like the programmer")
- Mobile and pervasive computing
- Context-aware, reactive systems and context-driven
interactions
You can find more about my
publications here. My PhD
research was
about
programming
language abstractions for reactive
context-aware applications.
I am a member of the Software and Enterprise Engineering
Research Group
of Makerere University. Previously, I was a member of the
Software
Languages Lab at the Vrije
Universiteit Brussel.
- AirQo
project:
The low-cost and participatory air pollution monitoring
(AirQo) project aims to respond to the
degrading air quality challenge, which is an emerging health
threat in
Africa. We designed and developed AirQo devices, capable of
measuring
particulate matter and other major pollutants as well as
environmental
factors such as temperature, humidity and location. AirQo
monitors have
been deployed both at static locations and motor bikes
(locally known
as boda-boda) in Kampala city. Deploying the AirQo devices
on a
boda-boda allows data collection from various areas that the
bodas
moves to. We believe that the results from this exercise
will also
provide insights into the air pollution exposure by the
boda-boda
riders as well as passengers. We are working closely with
the
boda-riders in Kampala suburbs. The bodas in Kampala are
re-known to
move almost everywhere and thus provides more spatial
coverage that the
static/fixed AirQo devices.
- Socomot
project: Socomot
promises to deliver smart decision-making to farmers
through real-time
soil conditions monitoring. Specifically this project
aims to: (1)
scale-up the development and deployment of smart devices for
collecting
data about soil conditions. (2) develop a software platform
enriched
with big data analytics for soil conditions to facilitate
smart and
evidence-based decision-making for farmers. (3) create and
provide
personalized information services about soil conditions that
can enable
optimized returns on agro-inputs and effective utilization
of
resources.
- BRIGHT
project: The
BRIGHT project aims at contributing towards sustainable
socio-economic
growth in
Uganda through capacity building in Information and
Communication Technology for Development (ICT4D) research.
Ten (10) PhD
students within the areas of digital innovation, software
engineering
and entrepreneurship will be trained through a research
partnership
between Makerere University and Mbarara University of
Science and
Technology, University of Gothenburg and Chalmers University
of
Technology of Sweden. The objectives of the BRIGHT project
are
three-fold: (1) To increase the number of staff with PhD
training in
ICT in Uganda (2) To increase the number ICT innovations and
entrepreneurs to facilitate social-economic growth in Uganda
(3) To
improve the culture of developing ICT solutions that are
designed for
scalability and sustainability yet tailored to the local
context. The
project is supported by Sida.
During my PhD research I developed
iScheme,
a
prototype implementation of
ambient-oriented
programming concepts that runs on
iPhone devices. After successfully
Bringing
Scheme
to the iPhone
platform, our next goal was to go beyond scripting iPhone
devices in
Scheme. I developed a distribution layer for the iPhone
development
with built-in support for peer-to-peer service discovery,
asynchronous
remote messaging and preliminary support for failure handling
(timeout-based). A more extended description of
iScheme
is
available
here.. Representative AmbiScrabble game and PolyGlot
chat
applications developed in iScheme are also
available
here.
Main iScheme Publication:
- E. Bainomugisha,
J.
Vallejos, E. Gonzalez Boix, P. Costanza, T. D'Hondt, and
W. De Meuter
(2012). “Bringing
Scheme
Programming to the iPhone – Experience”. In Journal
of Software: Practice and
Experience,
Volume: 42, N° in volume: 3, pp: 331 - 356, eds: R. Nigel
Horspool,
Andy J. Wellings, published by: John Wiley & Sons,
Ltd., ISBN-ISSN:
0038-0644.
Flute
is an experimental programming language that I designed to
ease the
development of reactive context-aware mobile
applications. The
language is implemented as a meta-interpreter in
iScheme
(described above). Thanks to
iScheme's
support for a language symbiosis between Scheme and
Objective-C
language, it is possible for
Flute
programs to access context sensor APIs (such
as GPS and accelerometer sensors) that available on iOS
devices. I have
created a dedicated page for the
Flute
language here...
Main Flute publication:
- E. Bainomugisha,
J.
Vallejos, C. De Roover, A. Lombide Carreton, and W. De
Meuter (2012). “Interruptible
Context-dependent
Executions: A Fresh Look at Programming Context-aware
Applications”. In Proceedings
of
the ACM international symposium on New ideas, new
paradigms, and
reflections on programming and software (Onward! ’12),
Tucson,
Arizona, USA, pp: 67 - 84, published by: ACM,
ISBN-ISSN:
978-1-4503-1562-3.