I was excited when Canonical decided to remodel Ubuntu’s interface with Unity shell. I spent some times installed it and configured it. There are still some bugs in it (at that time), and I decided to try GNOME 3. When I was using GNOME3, I do some works with Hadoop. I use Netbeans and run Hadoop to test out my program. My computer is like screaming when I was testing my Hadoop jobs. Then, I decided to use a minimalistic and lightweight desktop manager, something like LXDE or OpenBox. After spend some times using LXDE in Linux Mint 11 Katya, I stumbled into this minimalistic dark Linux distribution website. The name of the distro is Crunchbang. Continue reading
Hello, it has been a while since I updated this blog. I’m a little busy with college stuffs and something like that. And finally, I have came to the last year of my graduate study. After doing some consultations with some professors in my college, I got something as my research focus. Actually, it still at proposal stage, but I hope this will works, because so many people are counting on me about it.
So, I wanna implement MapReduce to optimize processing in automatic part-of-speech tagging (POS tagging). POS tagging is a process of assigning types of words in entire collection of text document. To make the process automatic, we can use some approaches that involves natural language processing techniques. Some approaches involve supervised learning, it means it needs to train the models with tagged corpus before we use the models to tag the real world text document. We can use MapReduce to optimize the learning and the real tagging process.
Since this is my first time dealing with (yeah) MapReduce and natural language processing, I feel a little bit anxious. Even, my anxiety is taking over my excitement already. Hearing this, maybe you’ll say how come I feel anxiety more than excitement. The answer is “I don’t know”, but I hope this will works out and I can finish the research on time. Oh, maybe because there is time variable. Well, if we don’t have time variable then when we will start to do the work?
Well, this is just me rambling around. Thank you for all the readers who have asked some questions, comments, and anything in this blog. I hope we can keep in touch. Wish me luck. I’ll write about my research little by little in this blog. So, be aware.. And let’s get started!!
Some days ago, there’s a vacancy offer in my undergraduate department mailing list. A company is looking for a programmer. I didn’t pay much attention to this email. Okay, here’s the email:
Mr. XXX, my office needs a programmer with this qualification:
- Have knowledge in VB, Java, and PHP
- Have any experiences as a programmer/developer for at least 1 year in IT division or in IT company or software house
- Have an ability to give product presentation to potential clients
- Have knowledge in CorelDRAW and Photoshop
- Have knowledge in Linux
- Have knowledge in building computer networks
- Have knowledge in hardware
I’m sorry for the long delay from the first part. I’ve been pretty busy lately. On this part, I write about the idea of MapReduce, how is it work, and how it distributes the data and process. This article is heavily referenced from MapReduce paper by Google. I write it again to deepen my knowledge about the concept. Enjoy!
What is MapReduce?
According to Wikipedia, MapReduce is a software framework patented by Google to support distributed computing on large data sets on clusters of computers. This framework is presented by Jeffery Dean and Sanjay Ghemawat in OSDI’04: Sixth Symposium on Operating System Design and Implementation on December 2004. The main idea is to utilize functional programming techniques, to obtain processing simplification in distributed environment.
MapReduce processing data using list concept that usually used in functional programming. The process consists of two function, map and reduce function. Each function take list of input elements and produce list of output. Map function take inputs and produce intermediate key-value pairs. These pairs then sent to the reduce function. The reduce function take these intermediate key-value pairs as a input. Then, for the same intermediate key, the function merges together the values to produce output. According to the paper, for every reduce invocation typically produces zero or one output value. Continue reading
In my college’s department mailing list, there is an interesting discussion about the quality of IT bachelor degree in the workplace. There are some reasons behind that:
- The bachelor graduate worker lacking practical skills. They can not answer a fundamental question that every IT or computer science graduate should know.
- The bachelor graduate worker also lacking soft skills, like how to speak with the higher-ups and communicate with another workers.
As a result, the companies prefer to hire a vocational IT graduate. Why?
- A vocational graduate sometimes have the practical skills that a bachelor graduate didn’t have. Computer science or IT is a wide spread knowledge. It means you didn’t have to go to the college just the learn how to program. It’s all over the clouds. So the learning materials are reachable to everyone.
- Vocational graduates are easier to manage. Some of them have more respect to the higher-ups than the bachelor graduates.
- The standard salary for the vocational graduates is less expensive than the bachelor graduates. Combine this factor with better skills and higher respect means that bachelor graduates’s job opportunities are in a grave danger.