Farhan Ul Haq
Research Assistant at LUMS
Consultant at Vedaray LLC
MS(CS) student at LUMS
Squash Captain at LUMS
Teaching Assistant at ITU

About Me

I am a Research Assistant and MS(CS) student at the Computer Science Department of School of Science and Engineering, Lahore University of Management Sciences(LUMS). I am also a Teaching Assistant for "Advanced Operating Systems" and "Advanced Programming" at Information Technology University (ITU). I completed my Bachelors in Computer Science from National University of Computer and Emerging Sciences(NUCES) Lahore Campus. Currently, I am doing my research with Dr. Umar Saif and Dr. Roni Rosenfeld and Software systems consultancy with Aamir Dehlavi at Vedaray LLC

My Research Interests include Systems programming, Kernel Hacking and ICTD work. My research during the past couple of years comprises of developing OS primitives for crunching big data without incurring the cost of userspace-kernelspace context switches and redundant I/O copying. Also, I've been working on speech-based interfaces for low-literates and semi-literates.

Research Projects

I am working on Polly, a phone-based and speech-based system for low-literates that spreads virally; it neither needs explicit training for its users nor advertisement to attract masses. Polly has an entertainment aspect to it as well as a utility aspect. The entertainment aspect compels people to learn how to use the system by themselves and then spread it by word of mouth or teaching it to others. In this way, a large network is formed, and people who cannot read/write are able to access speech-based services such as job advertisements and news. This is the utility part. In this way, a system can be spread using entertainment and once the system becomes usable by low-literates, all sorts of services can be provided to them, wrapped inside a speech-interface.

I am also working on developing in-kernel OS primitives that facilitate big-data computations by lowering IO and context switch overheads. Big-data computations rely on large amounts of data that is usually read from files or over the network and then stored in files or sent over the network after computations. All of this data reading/writing is done via system calls in the kernel. But the computation is more or less done in userspace, therefore making data cross the userspace/kernelspace boundary very often, even for trivial computations. Data paths can be streamlined if trivial computations are done within the kernel and only summaries or reduced data sets are propogated to userspace. Such primitives could potentially improve performance and CPU goodput.

I have previously worked on disease surveillance system and early epidemic detection system that has now taken the shape of iHealth. A disease surveillance system could keep space-time records of diseases. By running an early epidemic detection system on top, it is possible to predict epidemics before they actually happen. Such predictions could help in containment of diseases before they reach epidemic proportions.


Neighbourhood for Emerging World Technologies (NEWT)

Computer Science Department
Lahore University of Management Sciences
Lahore, Pakistan

+92 (42) 111 115 867, Ext: 4581
  +92 323 230 7377