Menu

freelance software developer in Beirut/Washington DC
likes to work on open data, ckan, twitter API, wordpress, D3JS, interactive visualizations, single page applications, load testing

hello :)

I am mireille raad - my friends call me mir - and i am a freelance software developer living between Washington DC and Beirut. I wrote my first lines of code well over 10 years ago and i’m always learning more.

Want to know more? check the about me page, find me on twitter and geeklist. Have a project or an idea and need a coder? get in touch!

current work

I am currently working at the World Bank at the intersection of development and IT, a very exciting place to be in. I get to research tools and help team leaders implement IT components in their projects - I also get to do exciting analysis and infographics with the resulting datasets.

I am also partnering up with Tamara Qiblawi on KnoozRoom - a digital story telling platform focusing on oral narratives from the middle east. We are making content + code work and interact together. We launched 6 months ago and we've been already shortlisted as one of the top 30 cross media projects by pixel market.

apps, services and things I can build.
ckan + d3js

opening up data

Have you heard all the hype about open data and wondered where and how to get started? or do you simply have some cool and useful data to organize/license/publish? I can help you get started by using many data publishing platforms including ckan, the world's leading free open source data platform.

twitter hashtag

smart data mining & analytics on twitter

Finally start mining the twitter hive for keywords and hashtags related to events, conferences, latest trends. Boost your twitter social media strategy by finding your "kind of twitter people" and get some interesting data insights and analytics at costs as low as 2$ per dataset.

twitter hashtag

mapping & interactive visualizations with d3js

make sense of complex data and bring it to life with mapping and interactive visualizations. tell an engaging story by making complexity simple and beautiful. share data in real time for decision making, transparency or more engagement.


I am interested to get freelance work on projects related to

  • - open/big data
  • - interactive visualizations and infographics specially with data driven documents (d3js)
  • - building, extending and theming wordpress sites
  • - data mining
  • - load testing and performance improvements
  • - interactions with service specific APIs (twitter, foursqure, mapbox, google maps, vimeo, you name it).
  • - building applications
  • - research or write reports on Social + IT related topics

If you have an exciting idea, big or small, please get in touch. My next dream project is something related to smart cities - what is yours?

case studies
  • 61 countries, d3js and opening governments

    Data/D3js/Visualization
    close

    context

    Our unit at the worldbank was actively participating in the Open Government Partnership summit in London.
    As part of our contribution and using Random Domain Intercept Technology the communication team ran a survey in collaboration with RIWI to capture data from 61 countries on the current citizens stand on "Open Government".

    challenge

    RIWI did an awesome job with running the survey and scheduling data deliveries including raw and analyzed data.

    The challenge was that this was a lot of excel files that needed to be transformed into something "exciting" and "presentable" in a very very limited time by 2 people only doing the data and design work.

    approach

    I worked with Felipe Estephan who did the communication and strategy work. He provided us with the big clear vision on what we are doing and why we doing it...With his many "thank you" and "you rock" words, he also provided us with motivation and inspiration to go through our "OGP Dev Marathon" hackpad.

    On the techincal side, I worked with my awesome team-mate Claudio Mendoca. He is a web designer/web developer. He created the web page Opening Government and did all the "heavy lifting" D3JS work and layout.
    My role was to help transforming the data from excel to mysql and then do the data plumbing work between the interface (D3JS) and database.

    The first excel module I wrote was to split the excel workbooks into different sheets and make them available for individual downloads.
    Then came turning the excel files into a database (mysql). The files had "region" information and since each country has a different number of regions, it meant that the files "were not equal" and could not be simply imported. So I wrote a small vb.net module to read all the excel files in a folder, loop into them and then extract individual cells and turn them into a csv that can be imported into mysql.

    un-tangling the data was done - then came the turn to display it into D3JS - I wrote also a module to read and transform the data in D3JS.
    The challenges were in "Refreshing" the data - you have to "Destroy" the previous d3js drawing and re-draw it... it is not like there is a typical dataset connector you are connected to.

    another challenge we ran into is that the "numbers" were being read as "strings" - which caused us problems while deciding on the scope of the d3js elements - it was bit tricky to figure that last one out while on a deadline

    website: http://openinggovernment.com

  • Responsive email signature generator

    Internet Explorer/HTML/CSS/JQuery
    close

    Responsive email signature generator

    context

    In a large unit, with many team members and as we created a new logo and identity, one of the branding ideas was to create an email signature for everyone with phone numbers, twitter handles, team names etc - in one useful sentence it was politics meets communication meets branding... the idea was easy, simple. no?

    the challenge

    This was one of those simple ideas with an unexpected number of little annoying challenges.
    Here is a quick rundown:
    - Has to work in lotus notes: Lotus notes email signature only accepts inline html, something that we've forgot how to do (thanksfully)
    - Has to be responsive and work with gmail, iphone, mobile app: you can't have a signature that breaks up on mobile, since everyone checks their emails in browsers, in email clients and email apps - we had to make sure everything looks fine everywhere. So we had to test on actual multiple devices/clients and iterate.
    - works with IE: most of the computers at work come with IE - the developers and designers best friend (sarcasm)
    - works within security constraints: at work, if you type gmail.com and get redirected to mail.google.com - this gets blocked. So i leave you to imagine what would happen if you try to run code that generates code and trigger an automatic download. Of course it would get blocked.

    the approach

    I worked on this with colleague, Claudio Mendoca. He had more headache then me, but the approach was simple - fixing one problem at a time and having a lot of patience. I did stop and wonder if this is worth it and at the same time I got stuborn and wanted to see this through.

    Eventually, after this was done, everyone ended up using it, including higher management, without us having to co-eorce people into it. Something that was a feat in itself. This taught me how to tackle "wicked problems".

  • Tasharuk

    Wordpress
    close

    Tasharuk

    context

    I was always a big supporter of SMEX. We care and work on the same topics when it comes to activism in Lebnaon and I am personal friends with co-founder Mohamad and Jessica.
    They were in DC and working on tasharuk.net with a freelancer in Lebanon. Timezones and Distance were not their best friends specially as the deadline was getting super close.
    I happened to be in DC as well and I thought I can help deliver a minimum viable product to meet deadline.

    challenge

    a late project started by someone else with the stress of delivering in short time. Who loves that? do I need to point out the challenge?
    Another challenge was that the site had to be in english and arabic (along with all the headaches that come with left to right and theme-ing)

    the approach

    The site was already being built on wordpress with heavy customizations. It was a platform that everyone was familiar with and seemed like a good base CMS.

    I reviewed the code and created a list of "missing features" - the site is about sharing resources in different categories and curating content - so inputting data into the site was a main missing component.

    After some wrestling with the code, and even tho we were already late, I decided to start over and found a good theme that had many layout features, clean code and many of the core features we wanted.

    Since collaboration was key, we did this over "dev marathons" - I would co-work with Mohamad and Jessica and they would provide me realtime detailed answers whenever questions arose. It saved us lot of emailing back and forth.

    They also were very flexible in terms of functionalities and we found "design" solutions to code problems - in other words, we altered workflow or requirements to avoid getting stuck in programming wormholes.

    The end result was really a minimum viable product - but after I finished the coding, Jessica and Mohamad kept improving the site and visual elements - they moved elements around, had lot of attention to details and most importantly curated a really really good list of ressources. The coding part was that 20% that allowed them to add their 80% value from good quality work.

    This kind of projects always gets me in happy to see what can be done from a simple technical implementation and as always it makes me sad to see projects being late and the frustration it causes. So I was glad I could get something working and have less people give up on technology.

  • Realtime SMS Survey

    Textizen, FrontlineSMS, Google Charts, Highcharts
    close

    Realtime SMS Survey

    context

    at work, we were organizing a conference on citizen feedback and the importance of openess. To drive the point home, we thought of getting real time feedback from the audience via SMS - the answers in realtime would inform the panel discussions. We chose SMS since it is the most common "tool" used in the field (due to its high penetration rates)

    the challenges

    The most important challenge was not a technical one, but procurement. To be able to setup an SMS gateway to send and receive SMS you either need to pay for the cost of SMS and/or have a piece of hardware to connect to computer.

    Going through procurment turned out not possible and least to say frustrating. After poking around and some frustration, I ended up using textizen because they offer free online SMS and have basic but excellent skip logic survey design.

    the results however were stored on the cloud, on textizen and there was no API to expose the results. which meant, for me to be able to share the results with the panels and visualize them with highcharts, i had to download them, import them and refresh... something not ideal for realtime discussions.

    I had the chance to do this "again" - this time, luckily, FrontlineSMS had just released their new version, containing an API to post results.

    I did not bother with procurement, I purchased the hardware I needed and changed my phone plan to unlimited SMS. FrontlineSMS was connected on my laptop and posting the results to my online server. Using google charts and ajax, they were visualized in realtime.

    The hardware gateway had limits on number of SMS that can be received and sent per minute, but with the size of the audience we had, it was ok.

  • Startup Database

    Data Mining
    close

    Startup Database

    context

    Each year, arabnet holds their annual conference in Lebanon and many others in the arab region. I was simply curious to see the type of startups, number of employees, sectors, distribution in countries, over age etc

    However this data was presented in HTML format with fancy icons and all but no downloadable data.

    challenge

    There were only 150 startups in MENA listed - the data is big enough to be cumbersome for manual processing and small enough, it was not worth some fancy data mining tools. So finding balance between simplicity and spending reasonable time on this was a requirement.

    It was also just for fun or curiosity idea with no real time or budget dedicated to it.

    approach

    I've used the simplest tool in existence - microsoft excel. I provided the approach/code on how to mine and published the final analytics/dataset.
    both are still available on my blog at those links:
    - Scraping data off arabnet startup database for a better understanding of the MENA startup scene http://goo.gl/cHS0bt
    - Analytics of 150 Arabnet Startup companies http://goo.gl/9uLtjq

from the blog