Francois Demoullin's webpage

Research assistant at the UC Davis GPGPU lab under supervision of Dr. John Owens

September 2015 - current

Who am I working with and what are we working on

I am working with Kerry Seitz, PhD candidate in the GPGPU lab.
Kerry's website with previous projects and some more information is located at http://csiflabs.cs.ucdavis.edu/~kaseitz/
Together with Tim Fooley and Anjul Patney from NVIDIA we work on the Metashader project.
The idea is to abstact from shading languages such as HLSL and GLSL using a meta-programming application which is capapble of producing shaders in may languages without programmers knowing the specifics of the shading language.

What I do

I am currently integrating the shaders the meta-shading application produces into my personal projects.
Using Lua, I define pipelines in the metashader and I produce the GLSL output which then is plugged into my Particle System and my Volume Renderer.
Thus far, I prefer the construct of a pipeline over the tedious work which is needed to write GLSL shaders.
Furthermore I get insights into the world of research and I get to play around on my personal projects all while producing valuable feedback to Kerry's team and the project.

Contact Supervisor

Kerry A. Seitz
kaseitz@ucdavis.edu
Dr. John Owens
jowens@ece.ucdavis.edu

Research group project at UC Davis under supervision of Dr. Norm Matloff

September 2015 - current

What is the research about

We are writing an exam submission software that helps students to use their own computers or laptops to write an exam and then submit it remotely via our submission software. Important aspects of the research are:
How to avoid cheating.
How to make submissions possible after the exam time has expired.
How to automatically grade parts of the exam such as coding problems or mathematical results.
How to make sure router issues or a slow network connection does not get in the way of a secure and smooth submission.
The tools used for this project are Python and a Vim text-based interface.

What I do

I am in charge of implementing all the Client-Server interactions using Python. Problems I had to deal with in particular were:
Allow multiple students to connect to the server at once.
Allow for secure file transfer from the client to the server and vice-versa.
Create a secure log in system and make sure students that flood the server are traceable.

Contact Supervisor

Dr. Norm Matloff (Computer Science Professor and researcher at UC Davis)
nsmatloff@ucdavis.edu

Founding member of Squeakshark.com

December 2014 - current

What Squeakshark does

The idea behind Squeakshark

Emerging musicians with no reputation but great songs find it difficult to sell their songs because of a lack of fans. This is where Squeakshark comes in; our website allows musicians to exchange their music for likes or follows on their social media. This allows new artists to build up a fan base and expand their social media presence.

Why I like working for Squeakshark

Squeakshark is a common project created by three highly motivated friends who put a lot of effort and free time into the development of Squeakshark. We all work part time and out of pure passion for the project, which is why I like spending every free minute I have on improving the website.

Who is behind Squeakshark?

The idea of Squeakshark was developed by Konrad OldMoney, a music producer from Vancouver. His vision of a music platform is being made a reality by two programmers, Maciej and me.

What I do

I am a full-stack developer. I implement all of the front-end using JavaScipt, jQuery, CSS and HTML5. I am familiar wit the back-end which is implemented in PHP.

Contact co-workers

Konrad OldMoney (Founder of Squeakshark / Musician)
konradoldmoney@gmail.com

Maciej Mizerski (Physics and optimization programmer at Roblox)
mizerski.maciej@gmail.com

Computer Science Teaching Assistant

September 2014 - January 2015

Class

CPSC101 - Introductory class on Web-Design, UNIX and the basis of programming

What I did

I was in charge of weekly labs and office hours.

Contact Supervisor

Dr. Rachel Pottinger (Computer Science professor and researcher at UBC)
rap@cs.ubc.ca

Software Development internship (Java)

August 2014

Topic of Internship

Design internal recruitment application

Implement an easy to understand internal recruitment software allowing HR to easily display applicants and their documents

Outcome

Robust Java software handling thousands of applications per year

Contact Supervisor

Sylvie Neu (Jr. Software Developer):
sneu@vdl.lu

Software Architecture internship

July 2014

Topic of Internship

Centralized log management solution

Gather all log files from diverse applications across the bank in one single database while guaranteeing the high security standards of the banking sector

Outcome and solution recommendation

Up to 80% reduction of bug detection time and a significant increase in data safety

Storage of a log files in one single database guarantees ease of access to all log files. Searching algorithms and analytics tools reduce search time for bugs and increase the productivity of all software applications

ElasticSearch and Kibana

I recommended ElasticSearch as a search engine and the analytics tool Kibana because both provide a free and powerful way of analyzing centralized log files

Contact Supervisor

Mathieu Dietrich (Sr. Software Architect):
mathieu.dietrich@bgl.lu