Category Archives: cs-wsu

My Very First Pull Request

We worked on the issue RAD-138 and we finally made our first pull request! Initially I had tried cloning from https://github.com/openmrs/openmrs-module-radiology/, and setting up two remotes, one for our team, and one from the base repository. My goal was to be able to pull from the main repository, and have our team push and pull to the cloned version I created. This worked for those purposes, but I had some difficulty squashing commits into a single commit due to me merging the OpenMRS master into our branch between doing work on the code, and work on the related tests.

I realized after struggling with squashing commits that I needed to fork the repository to send a pull request anyways, so I forked the repository and cherry-picked my commits from my previous branch, squashed them, and pushed them to a new branch on the forked repository. I learned a lot about git rebase, git cherry-pick, and how pull requests work in the process. It would likely have been tremendously helpful if I had actually read The OpenMRS Contributing Guide before beginning, as they explain how to set up the repositories, and use git pull –rebase to more easily squash commits, but I think learning more about git hands-on was incredibly beneficial.

I hope our pull request gets accepted and will let the world know ?

From the blog cs-wsu – Spencer Leal by spencerleal and used with permission of the author. All other rights reserved by the author.

Issue Complete?

This week was very eventful. As far as what we did, I could say we felt accomplished for actually completing an issue in the OpenMRS Radiology module.

On Wednesday, I found out that when we put the working machines on others’ computers, the machines wouldn’t work on PCs other than the original. In what I felt was a good decision, we decided to work off the working machines to help us work on the code.

We didn’t start working on error messages until Friday. All we had to do was change some error messages. The effort was to make it clear for the user that patient records would not be completely saved in OpenMRS, and that the first step for the user was to check their internet connection.

I’m really looking forward to our next issue. But lately, I heard that a specific lead developer of the radiology module forgot to mark our issue as completed. I wonder how we’ll resolve it.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.

OpenMRS: We’ve got a working build!

Throughout the week, I’ve been reinstalling Vagrant and the OpenMRS radiology puppet module in an effort to see whether the resulting Virtual machine worked at some point. On Monday, I uninstalled Vagrant and redownloaded the MSI file for the program. On Wednesday, I reinstalled both Vagrant and the puppet module. Shortly afterward, I tried running vagrant up on the puppet module, and 5 minutes later, the VM boot timed out. I reported this to my teammate, Nick, on Friday. What I received shortly after was what seemed like good news: we managed to get a working build of the puppet module on someone else’s laptop.

I’m hoping come Wednesday, I can receive a copy of the working build for my own laptop. I’ve spent countless weeks uninstalling and installing hoping that I can get a working build of the puppet module.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.

“Factory Reset your PC”?

Out of many things that could possibly solve my timeout issues with the OpenMRS Radiology virtual machine, one member of my team has been telling me for the past few weeks to “factory reset [my] computer and start from scratch.” As much as this might help me with the issues, I also did not want to give up other important files on my computer that I would need outside this class and outside my career.

This week was no different. Although on Friday, after what felt like the hundredth time trying to get the dcm4chee VM connected, and still unable to find the Vagrantfile where the config.vm.boot_timeout value was stored, I decided I would follow along with my teammates until I found a solution to my problem that doesn’t involve factory resetting my laptop. My only other solution at this point is to reinstall the files for the virtual machine, reinstall Oracle VirtualBox, and reinstall Vagrant. I’m hoping this solution works by Monday.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.

OpenMRS Radiology: Difficulties

My team chose to work on a simple issue with the OpenMRS Radiology module. We had to delete unused lines from a couple of property files, this should have been an easy thing to do, but in order to know if the code was unused, we had to test it in the module itself. No one in our group had a completely working module, so we were unable to quickly finish this issue, and are still trying to get things working.

Our groups problems have made me learn a few things when it comes to outsourcing work to other teams. It is important to make sure the instructions for getting things set up are 100% accurate, and will work with any computer setup. If not, many people will be stuck on just the setup process like we have been in this OpenMRS project. Another important step is to include the system requirements for a project, if there are any. I am running on Windows Vista, which limits the versions of software I can download, and I don’t know if these older versions will be supported in the project.

When a project like OpenMRS expects college students, who have most likely little experience with similar work, to contribute to their project, they need to have directions for setup and submission that are refined to a classroom level. They do have the forum to post any issue we have, but this seems like a roundabout way to solve the problem, if someone keeps facing problem after problem, they will just be waiting for a response on the forum continuously. I hope we are able to get something done with this project before the end of the semester.

 

From the blog cs-wsu – mmoussa7wsu by mmoussa7 and used with permission of the author. All other rights reserved by the author.

Radiology Module Update

This week I worked on an issue for the Radiology module in which I found dead and unused code that could be deleted to save space and increase efficiency. It might not be a difficult issue, but it helped me learn about the process of working on and testing an issue. There is nothing I would change about my process, fortunately everything went pretty well. I am in the middle of testing my edits, and I expect to receive working results as I searched for each line I was intending on deleting to see if it was used anywhere other than where it was initiated.

Overall, there were only 2 steps, but each step took a while to work on. Step 1 was just to search for each line in the messages.es file in the repository to see if it is needed or does absolutely nothing. If it is not used, just delete it. For safety reasons, I copied each line that was being deleted into another notepad file just in case we deleted a line that was actually needed. Second step is the testing to see if it still works. I am still in this process, but I will make another post that goes through the details of testing in the radiology module.

From the blog shatos by shatos and used with permission of the author. All other rights reserved by the author.

Radiology Module Update

This week I worked on an issue for the Radiology module in which I found dead and unused code that could be deleted to save space and increase efficiency. It might not be a difficult issue, but it helped me learn about the process of working on and testing an issue. There is nothing I would change about my process, fortunately everything went pretty well. I am in the middle of testing my edits, and I expect to receive working results as I searched for each line I was intending on deleting to see if it was used anywhere other than where it was initiated.

Overall, there were only 2 steps, but each step took a while to work on. Step 1 was just to search for each line in the messages.es file in the repository to see if it is needed or does absolutely nothing. If it is not used, just delete it. For safety reasons, I copied each line that was being deleted into another notepad file just in case we deleted a line that was actually needed. Second step is the testing to see if it still works. I am still in this process, but I will make another post that goes through the details of testing in the radiology module.

From the blog shatos by shatos and used with permission of the author. All other rights reserved by the author.

Wireless Connections and OpenMRS

This week, I continued work on the OpenMRS software, and continued trying to run OpenMRS from the puppet software. I’ve even tried reinstalling all the Git files for the OpenMRS Radiology system, including the puppet files for the dcm4chee servers. Even my teammates never saw the errors I’ve been getting, especially through the Windows command prompt, which is not UNIX-based.

Turns out running the software on a wireless connection makes the virtual box more likely to time out depending on how long vagrant’s timeout value is (I had it set to the default 300 seconds). I am going to try running the software on a wired connection next week. I’m hoping it all goes well.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.

OpenMRS Radiology Progress

For those that haven’t been keeping up with the blog, I joined the OpenMRS team as part of a class project. Over time, I have encountered some issues with the software.

3 weeks ago, Ivo, a member of the OpenMRS Radiology team from Austria, showed us how to run the OpenMRS software properly. I found the Skype tutorial somewhat interesting, and I figured I’d use his information to help me with the ticket we were given recently.

2 weeks ago, I started catching up to the rest of my team by installing the software necessary to install the OpenMRS Radiology code as well as the puppet software. Although I had no problems installing, part of the conflict for that Monday was mainly the wireless network and its slow download speed at the time.

Last week, I tried to run the puppet software through Vagrant and VirtualBox, the 2 programs I needed to run the software. Unfortunately, after about 2 minutes of getting the virtual machine running, the Vagrant software times out trying to boot. A discussion with a classmate and Dr. Wurst later, we thought my issue had to deal with the internet connection. I was running my PC on the school’s wireless connection at the time.

As soon as I got home that Friday, I tried running Vagrant again, only to have the software time me out again trying to boot the virtual machine. This time, I was running the software from my home’s wireless connection. I hope next week, if problems persist, I can try running the software on a wired connection. I’ll keep up to date next week.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.

Clean Coder Chapters 4 and 5

The Clean Coder Chapters 4 and 5 are all about coding and TDD (Test Driven Development), respectively. Reading these chapters gave me some insight on how to properly write clean code, and there were several parts of each chapter that intrigued me.

Chapter 4 discusses proper Coding techniques, and adds onto what I learned last year reading Clean Code by the same author. Although the chapter allowed me to evaluate my coding technique, I also found the 3 AM coding story quite hilarious. It doesn’t relate to any stories I would have, but at least it helps me understand better about the importance of a healthy, awake, and alert mind.

Chapter 5 introduces some tips for TDD. TDD has been around for ten years and is still a common practice to this day. The only thing I found interesting, though, was that TDD isn’t exactly useful in every situation. One can still write horrible code even if the tests are written first, especially if the tests are bad themselves.

These reads keep getting interesting as I continue, and I hope the next few chapters make some sense for when I step out into the real world. I hope I can also use these techniques while working on the OpenMRS code.

From the blog cs-wsu – jdongamer by jd22292 and used with permission of the author. All other rights reserved by the author.