I am done with the GSoC project 🙂
All the commits are here:
There are no major commits after 17th August, so yeah I finished on time 🙂
I had the most fun doing the project. Thanks everyone, especially Jeremy, Gaurav and Shaun. The entire OpenMRS team has been very supportive actually. And I sincerely hope to be a part of it in future.
Signing off. Thanks for staying tuned the whole summer :).
First of all, I apologize for posting two weeks’ summary together. Well, in my defense, there is little to report when all you do is solve blockers and bugs in your code 😉 (Developer audience can empathize with me.)
The good news is that the Patient Matching Module Strategy Enhancements Project is almost complete and my commits are at:
1. Improve UI
2. Save strategy such that it is compatible with the way “Create Strategy” feature saves strategy.
3. Calculations should happen in a separate thread.
To see my progress with the above list, stay tuned! 🙂
I wrote the code to get all the field names we want to test to get the suitable fields. (Had to dig into the module code a lot to find the corresponding service functions) I will create a map to those names to get the corresponding sql schema location of these fields. The code is here:
Signing off, stay tuned!
This week I wrote the hibernate code to get an entire column of a given table and a servlet to test that code. The commit can be found here:
As always, stay tuned! 🙂
There has been some progress in the UI since last week:
Looks like this is not going to be easy after all. Next steps:
1. Convert the codes written so far as dwr classes
2. Write DAO level and service level codes to get an entire column/field for a patient
3. Experimenting with the UI to gain some clarity on how to proceed
I am a bit overwhelmed, the path ahead seems foggy. Lets hope for the fog to clear up, Stay tuned!
I have started working on UI. Will be committing my codes at this branch:
I was also working on what I call a CRUD assignment. Its not actually required for the project but I have spent quite a lot of time on this, so I would mention it anyway. The codes are here:
And they are not working by the way :/. I have turned to my mentor for help. Lets see what happens next. Stay tuned!
This week I started working on UI for using the strategy enhancements feature. Another important aspect I am looking at right now is how to get all the patient data from database, the database is designed very cleverly and I am studying it right now. My system crashed half way through the week, that didn’t allow me to accomplish much this week. I will make it up for this in the coming week. Stay tuned! 🙂
This week I wrote a Servlet to test my CRUD files, I am getting a null pointer exception on this :(. I am trying to debug. The commit can be found here:
I also finished the data mining assignment given to me by Gaurav, the code parses twitter data to find top 5 most used words by a user:
Lastly, I encoded the random forest I got from last week work as xml trees.
That’s it for this week. Stay tuned! 🙂
The following repository contains the codes to generate random forest using expert advice:
This was the aforementioned addition to the original project and its DONE 😀
It took time because pydtl isn’t well documented (or I couldn’t find the documentation, you give it a try :P). This is about it for this week, stay tuned!
This week I implemented prediction of advice using Field metrics and a decision tree. The source codes can be found here:
According to the timeline me and my mentor Gaurav agreed on, this was supposed to be over by August 5th. This means we are running 20 days early, yayy! 😀 And since we could not gather field metrics formulas in time, we started 10 days late and still finished early! I am really happy about this since it gives me time to incorporate an unexpected extension to this project. Originally, getting decision trees from expert advice wasn’t a part of this project. Well now, I have both the opportunity and time to solve this interesting data mining problem. How about that, high five! 😀
I also looked at Module Servlets, pydtl and I am currently looking at a java equivalent of pydtl.
That is all about this week. For more, stay tuned 🙂