Week 30 – Multi-threading

What experience do you have with UML diagrams?

Not a whole bunch. I’ve used them before mostly as flow designs, but without any training a lot of it has been just guessing on what makes sense and not paying much attention to what the arrows, boxes or other components mean.

Are they used at your workplace?

I’ve used them at my work place before, and we include them in design documents, but again. I think most engineers are not very familiar with what each component means and how it should be drawn. I’ve seen them in far more formal settings, such as design documents from large corporations, or for big frameworks that require a bit more outside interfacing than what our in-house diagrams do.

Have you done multithreading in any language before?

Not in any real or purposeful capacity. I did very little multithreading with ruby. However, those threads are nothing like java, and the purpose of the application was mostly experimental so maintaining, or designing around it was not a concern. In other languages like Elixir, multithreading is sort of a given for how the language works (spinning workers etc), so it was not a concern before. I really enjoyed getting a better understanding of threads, and how they work. I think I’ll spend more time digging through this, and maybe writing a few more things on my own. I want to learn more about them.

Did you find Patterns to be helpful? 

Yeah. This is a pattern I am most familiar with. Most of the web-frameworks work with the MVC pattern. I didn’t have any formal education on it though. Most of it has been just professional learning through both reading frameworks, as well as reading through my peers or completing projects. Having read through the books, as well as other links on specifically java MVC gave me a better perspective. Working on the assignment, having to make the hard decision of where each part of the code goes, and figuring out how information is passed really gave me a better perspective. I think i understand better how RoR or Sinatra work and why they’ve made the decisions they did.

Update your learning journal from what you experienced this week with class. 

This week has been overall a bit lighter in some ways. The project was very complex in scope, but the I feel that after cracking how we wanted to move things around, we were able to iterate on it. Going over what the game was supposed to change, and updating the logic was interesting, but not nearly as fun as cracking the MVC flow.

To me, the real loss was the Multithreading, I really had hoped we could spend more time on it. Learning and maintaining threads, and how it can affect a program. Maybe running through multiple processing systems at the same time, like parsing files and updating the UI at the same time. So while working with the timer was interesting, it felt a bit short changed on what the real deal component was. I think we could have still do MVC with lots more of multithreading built into it.

This entry was posted in CST-338, CSUMB. Bookmark the permalink.