Hi, everyone. This is Omiya, lonley engineer at mate.Inc,.
This time, we want to celebrate the beginning of mate TECH BLOG.
I was assigned to be a leader of developing team of Scala, Play Framework, and Akka.
I will write what I learned and what I had hard time on and solutions to it on this blog. It is expected to learn by myself most of the time, so I will be creative taking advantage of this opportunity.I hope this blog helps you to understand the engineer’s life and the story behind it, not only about the languages… but please expected to be mostly about the programming language.
About our new service, ENishi
Now, For ENishi, our new membership-based web service, I will develop new functions as follow.
I thought the hardest thing is on developing chatting function. That is just because it needs a large amount of database loading and real-time communications. And what a pressure…this function is the most important function for this service.
Then for selecting programming language for ENishi Application, I decide based on “What is the most useful when developing Chatting system”. It is nature of programming to consider the hardest thing first…and then everything else will…just…yeah, I can handle it somehow…
If the programming language does not support WEB SOCKET, it will not work. Well…but almost all of the programming language supported it.
Well…as I mentioned, there is no other engineers beside me…considering that I have nobody to talk about it…I talked to the team. They said, “The programming language you are familiar with is good enough, right??”
Umm…well…and I only had 4 months to release the service. I needed to decide now to be on time.This theory leads to VB.net…
I was most familiar with it throughout my engineer life. I like this language, but it seems to be out of trend and not compatible for this project.
Actually, I have been changing programming language every 6 months depending on which project I get involved with. I did not care about the time needed for learning, money…and etc…I was so used to change programming languages.
Well…just ignore my experience and think my experience as useless… And I started to do research on what is the best language for “DEVELOPING CHATTING FUNCTION”.
Then, SCALA came up.
First Contact with new programming language SCALA
“Scala had many introduction results. For example, for Twitter, LinkedIn, CyberAgent, GREE”.
Most of the chatting functions are made using scala. I was introduced to SCALA by the we article…from then… I could not forget about SCALA. I need to use Scala!!!!!!!!!!!!!! I kept searching for another programming languages that is suitable for chatting system, but nothing was better compare to SCALA.
Finally, Python, Node.js, and Scala remain in the candidates. But my first impression on Scala was good and the first impression made me decide. And Scala has much superiority as follows;
1.Superiority For Rapid Real-Time data exchange.
Play Framework has standard support for WebSocket.
2.It is good for serviceability and maintenance, because we can write simple source code by Scala.
I was the only engineer in mate. And I pushed Scala. Finally it was decided. Now I was introduced to Scala officially.
We had a concern about learning cost, developing with minor language etc… But after all, my intuition won.
We also got permission from the outside experts of Web Service. It was decided officially to programming language for ENishi.
It was not possible to do the same if I was in a large company.
So now I am developing using Scala, that was decided by myself!!! It is my Pleasure to be responsible for making decisions. I also have pressure, but it is enjoyable.
In this company, each of us needs to be responsible for lots of things. If you enjoy it, you will love this company. Other things, You will come and see!
Shall we learn Scala together??
What I feel being in this company is…RESOURCES! We really needs resources!
I cannot find Scala Engineers…
I asked many people but it seems like people who are using Scala is very little…Maybe they will go to big companies…
There are only one months left until the release of ENishi but there are nobody who can help me. And there are many many functions we want to develop after releasing.
Anyone who wants to help me are welcomed at this company!
Well…at the end, I didn’t like the UI of eclipse and now I am using SublimeText…oh well..