Open Source

I am interested in open source software and hardware technologies in general, and especially as they relate to education. They enable better and deeper understanding by allowing learners to dig deep as much as they are willing to go.

Open source refers to either software or hardware that is freely available for use, modification, and redistribution, according to a free license.

KFUPM Open Source Initiative (KFUPM-OSI)

KFUPM-OSI is a young initiative aiming to foster the open source culture in the College of Computer Science and Engineering (CCSE), by spreading awareness, and promoting the use and development of open source technologies both in academic and co-curricular activities.

To learn about the initiative, join in, or just find out what it’s about and what goes on in it, check out:

All are welcome to join. No prerequisites or skills required. Only good old pure interest. Just subscribe to the mailing list, and join the conversation.

Projects I Maintain

Mihrab is a Muslim prayer times program that presents the prayer times using a novel layout. It is written in C, and uses the GTK+ graphical toolkit.
Mezzanine PageDown
A rich-text editor for Mezzanine: an open source content management platform built using the django framework. Mezzanine PageDown integrates the PageDown editor with Mezzanine. PageDown is the editor used in the StackExchange network to facilitate authoring content using Markdown. Markdown is a lightweight markup language that allows people to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML). The language takes many cues from existing conventions for marking up plain text in email.
OpenERP Arabia / Odoo Arabia
A community website for the OpenERP/Odoo Arabic community. The community serves as a hub for connecting Arabic-speaking companies, organizations, and individuals who are interested in OpenERP, whether developers or users. OpenERP/Odoo is an open source business application suite. The OpenERP Arabia website facilitates the community’s activities along with a few other communication channels, such as the mailing list, the community forums, the Facebook page and Twitter feed. Also, the community uses Trello to track project tasks publicly, and publishes code and content on BitBucket, including the software running the website.
Boot multiple ISO images from a single USB stick using GRUB. Includes a GRUB configuration file and a set of instructions that will make a USB stick bootable. The GRUB configuration can boot any of a number of recognized ISO images as is, just by copying them into the USB stick.

Projects I Use Regularly

Debian GNU/LinuxThe Universal Operating System
Debian is a free operating system (OS) for your computer. Debian provides more than a pure OS: it comes with over 37500 packages, precompiled software bundled up in a nice format for easy installation on your machine.
LaTeXA document preparation system
LaTeX is a high-quality typesetting system. LaTeX is the de facto standard for the communication and publication of scientific documents, but it can be used for almost any form of publishing. LaTeX is not a word processor! Instead, LaTeX encourages authors not to worry too much about the appearance of their documents but to concentrate on getting the right content.
EmacsThe Text Editor
GNU Emacs is an extensible, customizable, self-documenting text editor–and more. Development began in the mid-1970s and continues actively. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing.
MercurialVersion Control System
Mercurial is a free, cross-platform, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface. Every clone contains the whole project history, so most actions are local, fast and convenient. Mercurial supports a multitude of workflows and you can easily enhance its functionality with extensions.
DreamPlugLow-power Personal Server
DreamPlug is a compact and low power plug computer running Debian Linux, based on Marvell’s Kirkwood 88F6281 ARM9E SoC. It can act as a low-power web server, a printing server, a media server, or a back-up server, or to provide file-sharing and remote-access, or any other network services. It uses micro-SD internal storage and an external Secure Digital slot, but also offers USB ports and a Serial ATA port to connect external disks.
OpenWrt is a highly extensible GNU/Linux distribution for embedded devices. Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that’s more recent than most other distributions.