Tuesday, February 21, 2017

A Princess without Crown

Soon it'll be 3 years that dad left us. Time flies, it really does, but some scars don't get old and it always hurts the same whenever I think of him. Even though I try to keep myself busy with work and all, in my subconscious mind he's always there. That's probably why I dream him pretty often. 

Couple of days ago I had a dream where I was in a prize giving ceremony. I think that was a school. They called my name for the first prize, I walked up on the stage and could see dad watching me proudly. I was so happy in my dream! When we were little, whenever we achieved something great, dad would hug us and call us tiger cubs! That feeling of him being happy and proud was so precious to me. I knew I always worked hard because someone was watching me succeed and it mattered to that person. And now there's an empty spot, a big hole in my life, which I know no one else can fill in. 

It's funny how a single event can flip your whole life upside down. Every success is a bitter-sweet experience for me now. The fact that I can't share that news with dad makes me so sad that I can't really celebrate. I always used to call him the first when I had a good news and he'd always respond however busy he was. It was so difficult for me when all my friends had their parents attending their graduation ceremony at grad school, and I walked on the stage to receive my award knowing that my dad wasn't there to cheer me. Every single happy occasion just makes me miss him more.

I'm reading the book 'All the Light We Cannot See', where a dad brings up his daughter who lost her eyesight at an early age. He teaches her how to find the way back home alone little by little, gets unique presents for her that help her see the world in her imagination, and he makes her believe that she's strong and enough. It reminds me of my dad, how he always wanted us to be self-reliant, hard-working and empathetic. I read books or go out for a walk to feel better but whenever I see a girl is having great time with her dad, my heart aches inside that I can't deny. But it's still beautiful to see how (almost) every dad treats his girl like a princess.

My dad always treated me like a princess. He didn't spoil me but he treated me right and taught me the right values. Without him I feel like a princess without crown, but I'll always follow his path and do everything that'd have made him proud. When I go out for run I listen to the song 'If You Could See Me Now' often and think that I need to make him proud because he's watching me wherever he is. I miss him every single day and really wish he could see me now...


Saturday, January 21, 2017

Milwaukee Visit for DLF Forum 2016

When people talk about different places to visit around U.S., Milwaukee isn't one of the common names that come up in those conversations. I've been to Madison in 2015 summer for my cousin's graduation ceremony. It's a pretty little town with beautiful lake side. We only went for a day trip and I was pretty exhausted, but I loved it. Growing up in a port city, I loved lakes, seas, oceans all my life and I love any cities that have water body, it soothes me. 

Madison was beautiful but I had no image for Milwaukee in my head. Anyway, last November I had a chance to visit Milwaukee for the Digital Library Federation (DLF) Forum conference. It's one of the biggest conferences in the library world and is usually hosted in lovely places (last year was in Vancouver). I looked up for places to visit before leaving for the trip. The Art Museum looked interesting (I visit art museums wherever I go, so that's always on top of my list) but otherwise, I wasn't sure what to expect from it. But before I go into more details I must say that I absolutely loved Milwaukee! 

Beautiful lake side
On my way there, my flight was almost 4 hours delayed and I wasn't happy about it. I wanted to arrive early to visit the art museum but that didn't happen. My friend and colleague Eka was already there enjoying amazing looking sushi all by herself! After I reached the hotel Eka and I dropped our bags and went out for a walk around the city. 

My first impression of Milwaukee was - it's a walkable city, which is always my first preference for any place to live or visit. The city has many historic buildings due to its growth and popularity in the mid-19th century. It felt like a treasure land where you find the jewels one by one with every new adventure. I loved the lake side views especially, looked so pretty even at night with all the light reflections from little boats, decorations from surrounding parks. It's a place where you hold hands of your loved one after a tiring day and sit by the lake while enjoying the breeze and watching little waves, and that's all you need. After our walk we went to a fancy Italian restaurant, which again was very romantic and we both didn't have partners :p It was still very nice, it's always great to spend time with her :)

View from my hotel room, I think it was a performance theatre
Lake side view at night
The conference started next day at the Pfister hotel, which is amazingly gorgeous. There were many interesting presentations and conversations. I didn't present this year but it was still a good learning experience. I wanted to go to the art museum as I couldn't make it the day before and I did but it was closed (-_-). However, it was a nice walk and the surrounding lake looked pretty in the day light with bright blue.
The Art Museum 
Different perspective of the museum


The third day I had decided that I've to visit the museum at any cost! So near the end of the last session I headed there and finally had my peace of mind enjoying the paintings. Designed by Spanish architect Santiago Calatrava, the building itself is an enchanting piece of art with stunning interior and exterior design. 

Museum interior

Entrance view
We were supposed to leave the next day, so that night all the NCSU folks had dinner together, which was great. I got too exhausted and had to come back to hotel alone while others went to get drinks after dinner. Also, it was a very important and sad night for everyone - Trump got elected. So, next day was very gloomy and depressing for all. The weather was great in the morning, so we walked around the lake side for pretty long after the conference. 

On my way back I got myself a magnet (it's a ritual). As the day was bright and sunny, the sunset was stunning too. I kept getting distracted while chatting with Todd in the boarding area. All in all it was a good trip and felt little sad to say goodbye. I loved Milwaukee and if I've a chance I'd love to live there.

Wisconsin magnet, of course cheese!!

Gorgeous sunset





Sunday, December 4, 2016

Fun with Data - Basics of R - Part 3 Visualization

In this section we'll cover some basic visualizations with R using the built-in plot function and using the library ggplot2. Before we start, here's a quick review of the topics we covered in previous two sections.

Part 1 - Getting R and R-Studio in your machine, understanding the structure of R-Studio and loading data into R. We also covered some basic functions for viewing the content of loaded dataset.

Part 2 - Understanding prompts in R-Studio, variables, vectors and data frames. Also, summary, mean and length functions.

Now that we can load data into R and see what's inside, let's try to visualize it. Visualization is a great way to actually make the meaning of data visible, especially when we're dealing with large amount of data. For example, we're planning a sports event at school and trying to group students based on their heights. We can see the distribution by looking at the data, but when we create a graph it is easy to comprehend which proportion falls in which category based on height. 

Today we'll see how to create scatter plot using both basic plot function and ggplot2. R comes with many freely available datasets, which you can view by typing data(). We'll use the airquality, mtcars and pressure datasets to create sample graphs. Since they're already in R, we don't have to load them, but look into the content by using some of the functions we covered in previous sections, or by simply typing their names in the console.

airquality()
mtcars()
pressure()

Splitting the View Window
You can split the view window to see more than one graph or plot in the screen. For example, par(mfrow = c(1, 2)) splits the window into 2. Changing it to c(2, 2) will split it into 4. 

Install ggplot2 Package
install.packages("ggplot2")  # installs the package
library(ggplot2)                    # loads the library into the workspace 

Scatter Plot
In the mtcars dataset we can see weight of a car and how many miles it runs per gallon. We can find out if there's any correlation between these two by creating a scatter plot.

plot(mtcars$wt, mtcars$mpg, main="Scatterplot Example", xlab="Car Weight ", ylab="Miles Per Gallon ", pch=19)

I'll explain what each of the parameters mean. 
main -> Give a name to the plot
xlab -> Name of X-axis
ylab -> Name of Y-axis
pch -> Type of symbol for the graph. You can see the full list from this page.

Now, this alone can be little difficult to understand. So, you can add fit lines to this to see how many data are positively or negatively correlated. 

abline(lm(mtcars$mpg~mtcars$wt), col="red")  # regression line (y~x)
lines(lowess(mtcars$mpg~mtcars$wt), col="green")   # lowess line (x, y)


You can create the same graph using ggplot2, which is visually more pleasing and provides a lot of options to ornate your graph. (Check out the package documentation for further information)

# Create the same graph using ggplot2
qplot(mtcars$wt, mtcars$mpg, xlab = "Car Weight", ylab = "Mile/Gallon")

# Following syntax can be used if the two vectors are already in the same data frame.
qplot(wt, mpg, data=mtcars, xlab = "Car Weight", ylab = "Mile/Gallon")


We can also add colors to see correlation to another variable. In this example, cylinder size of cars. 
qplot(wt, mpg, data=mtcars, xlab = "Car Weight", ylab = "Mile/Gallon", color =cyl)

From this graph we can make assumption that light weight cars with smaller cylinder size usually run more miles per gallon. Similarly, we can create different visualizations by comparing other variables or in other words, by considering which information we're trying to provide to our audience. 

A great reference to learn about visualizations with R is R Graphics Cookbook by Winston Chang- 
Chang, W. (2012). R graphics cookbook. " O'Reilly Media, Inc.".

Thursday, November 24, 2016

Another Thanksgiving

From 2015 thanksgiving to this year - I don't know how time went by so fast. Too many things happened in between, changed my life so drastically that I felt I was constantly struggling to catch up, still trying. Life hasn't played fair with me for sure but I still have a lot to be thankful for. 

I've a loving family who are eagerly waiting to see me at home. My 2-year old nephew who hasn't seen me in real yet dies to talk to me on phone. I've a job that's going well and I'm almost always loved and appreciated by people. I've some awesome friends who're not living close to me anymore but are always there for me when I need them. Most of all, I woke up in my own comfortable bed and don't need to worry about food or other things. Life's good even though something is missing but something will always be missing and that's what gives us the drive to live and achieve the things we're missing. I know what's missing in my life right now - all the people I love, no one lives close to me anymore. It'll be almost 8 years soon that I left home. I missed my family but always had my friends around who'd fill up that space, but now that I've started a proper adult job like all my other friends, I'm missing the life I've lived for past 7.5 years. However, there's always something to be thankful for and what's meant to be for me will find a way to come back to my life. I believe that kindness, honesty, hard work and love can win everything in life even though sometimes it takes longer for some people.


Last year on this day I was with Aly and her family, it was wonderful. I was invited this year as well but couldn't afford to travel all the way to Illinois cause I've been traveling a lot lately and going home in two weeks. I needed some time for myself and I'm thankful to have that time. I'll have thanksgiving dinner with some of my lovely colleagues though, looking forward to that. Just hoping next year will be a more positive one for me and everyone else in my life who I love and hold closely.

Thursday, October 27, 2016

The Most Horrific Travel Story

As much as I love to travel, it always comes with some sort of horror stories for me. I wrote some of them in my Yet Another Travel Horror series before. However, each time I face some trouble somehow at the very last minute I get out of it, which happened this time as well. But none of the other horror stories is equivalent of what happened this time. So, here goes the most horrific travel story in my life.

It's been a while that I actually traveled somewhere. Moved to Raleigh around the end of June, and didn't have the chance to go anywhere. So, when I had the chance to go to a conference in Montreal, I was definitely more than excited to have a break from my routine work life and see some new places. I've a photographer friend in Ottawa who I've known for few years. We always talked about meeting up but never had the chance since it's hassle for me to go through visa application procedure and all. Since Ottawa is pretty close to Montreal, I told my friend he should visit me, but he said I should go to Ottawa instead as it's the capital of Canada. After seeing some pretty places there he'll drive me to Montreal the next day. So, I changed my plan and decided to go to Ottawa first for a day. But now I really wish I hadn't done that..

I reached Ottawa on Saturday afternoon and got super excited to see pretty fall colors, even though it was cold and raining. Since I had to leave pretty early for my flight, I was super hungry and we decided to go for lunch somewhere in China town. I get on the car and put all my bags on the back seat (mistake 1). We parked the car on a street, it was a quite busy area. When leaving I told my friend if I should take my bag pack with me (which I always do but I was tired of carrying), and my friend said that it's a safe area and it should be fine. So, I took out my wallet and left everything else there (mistake 2). Little did I know that I'll have to prepare myself for one of the biggest shocks of my life! We come back from lunch around 30 minutes later, and one of the car glasses was broken and both of my bags were gone. I always tell people I carry my whole life in my bag pack cause it's always heavy. Literally my whole life was gone with my bag, including my MacBook Pro and passport with USA and Canada visa. The only other time I freaked out in my life was when I got the news of my dad passing away, then there was this one. I didn't want to think of the consequences since they can be so big. If I were simply a tourist then it'd probably be easier, I would directly go back to my home country. But in my case, I've a US student visa though I started my job under OPT. My home country isn't my home now, I've a home in Raleigh where I live and work and have to come back. In order to do so I've to show my passport, visa, valid original I-20, work authorization permit and proof of employment at the border. And I lost them all other than one card, which meant I had to contact all those related people in the right order to get those IDs reissued. That doesn't only involve time, money and extra effort, but unnecessary human interaction with the type of people you usually don't want to interact with without any reason.

Next four days were complete nightmare and I possibly would never want live that ever again in my life. First important thing I learnt is, my country's embassy doesn't have any emergency protocol for such situation. This third world country stopped issuing hand written passport last year November and to issue machine readable passport it can take up to two months, which is not guaranteed. So, what do I do in such situation? Stay in Canada like a homeless person without any status? Does BD government have no liabilities to ensure the protection of their citizens in foreign countries? My campus HR wasn't of the greatest help either when I asked them to send me my I-20 copy. Also, my roommate was out of town too, which made things worse as I had some copies of my documents in my room. My house keys were in my bag, so they were lost too.

It was a completely uncertain situation, totally out of my control. The only thing I was trying to do is stay calm and act rationally step by step. My stress level reached higher than the highest it could get, and I started to have my old chest pain that happened after dad passed away. But I decided to go to the conference since that was the sole purpose of my trip and figure out the rest gradually. Then on Tuesday afternoon I get to know that my passports were found! Apparently the thief of someone dropped them in the Canada mailbox and they took them to my embassy. My employee ID card was there too. Luckily I had decided to attend the conference, otherwise if a new passport was issued in the mean time it would make no difference to get back my old one. So, all the puzzle pieces fit together right on time and I could make it back home. It felt like a complete miracle but somehow I was rescued at the last minute again. There are more details of the story but I'll leave it to that.

I'm still trying to recover from the shock and stress, and dealing with lots of different emotions. I always trust people instantly and never believe someone would cause harm to another innocent person, but that's definitely shaken. I'm having hard time believing in my future self who would make decisions for me. I've made so many mistakes while making decisions and failed myself as a proper intellectual adult. I need to think how to better myself and avoid unnecessary hassles and stress. I've always been fine traveling by myself but now I feel paranoid. It'll take some time to get rid of this anxiety but at least hope this huge life lesson taught me something! 

Moral of the story - be careful wherever you go, not because you don't trust others, but for your own sake, because one simple mistake can change your life forever.

Sunday, October 16, 2016

Fun with Data - Basics of R - Part 2

In our first post on R programming language I covered how to download R and R Studio, understanding the structure of R Studio, and loading datasets into R. I meant to continue the series (as I always do), but couldn't get back to it any sooner. Recently I've started working on a workshop where I'll be teaching R to the beginners. So, I thought this would be the best time to add more content to this series as well. 

In this Part 2 I'll write about the following - Understanding prompts of R Studio, doing basic calculations in R, all about variables, functions, the concept of vector in R, and data frame. Some of these I should have covered in Part 1, but better late than never!

Prompts in R Studio
  • In console a new line starts with >, means it is waiting for us to communicate
  • If we give it an incomplete command then it returns +. Press esc button to return to a new line.
  • To quit R type q()
Doing Basic Calculations in R
  • The order of arithmetic operations is  (left [done first] to right [done last]) : ^ / * - +
  • ^ is used for raised to the power of, followed by division, multiplication, subtraction and addition.
  • At the prompt, we enter the expression that we want evaluated and when we hit enter, it will compute the result for us. For example: > 10 + 22 will return [1] 32
All About Variables 
  • Variables are the symbols that store assigned values. We can store a computation under a new variable or change the existing value of an old variable.
  • Variable names in R are case sensitive (upper or lower case).
  • It is a good practice to assign meaningful variable names that helps to refer to easily for complex calculations.
To assign a value: variable_name <- value
Example: x <- 100

ALERT! Reserved Symbols!
In all programming languages certain symbols are reserved for specific purposes. The reserved symbols in R are - c q t C D F I T (So, don't use them for your personal variables ^-^)

Functions
A function is a sub-program that performs a specific task. For example, to find a square root of a given value. It helps to avoid repetition and easy execution in future. 
Try this code to understand how functions work -
firstFunction <- function(n){n*n}
This function named firstFunction is supposed to return square of any integer. Test it out by assigning different values to the function. Think of what other functions you can possibly write.

Vector
Vector has different meanings in different contexts. In math and physics, a vector is an element with both value and direction. But in R, vector is a sequence of data elements of the same basic type. It can be defined by concatenating the members in a set c(). Example: x <- c(1, 2, 4, 5).

Once we have a vector of numbers we can apply certain built-in functions to them to get useful summaries. For example:
> sum(x)        ## sums the values in the vector
> length(x)    ## produces the number of values in the vector, ie its length
> mean(x)     ## the average (mean)

Data Frame
A data frame can be created by defining different variables for each column as vectors and then joining them together.
Example: Let us assume we have a list of different fruits with their names, colors and size.
> name      <- c("apple", "banana", "peach", "watermelon", "grape")
> color      <- c("red", "yellow", "peach", "green", "red")
> size_cm <- c(10, 15, 8, 40, 2)

Then we add these three columns together to create the data frame names fruits.data.
> fruits.data <- data.frame(name, color, size_cm)

To see the values of the data frame -
> fruits.data
        name      color       size_cm
1      apple        red            10
2     banana      yellow      15
3      peach       peach         8
4 watermelon  green         40
5      grape       red             2

--------------------------------------------------------------------------------------------------------------------------
I think we've covered a lot of basics concepts already, so I'll stop here today. In the next post of this series, I'll write about setting work directory, manipulating datasets, and playing around with some plots/visualizations, and hope I can make it sometime soon! 

Sunday, October 2, 2016

My First Race

I've been running for about 4 years now, but I mostly run for fun, it helps me with stress. When I was in Japan I used to run only when it was warm outside, didn't really go to the gym. Since I moved to Illinois running became more frequent, and I loved our campus gym. So, snowy winters didn't stop me from running indoor on track. However, when it came to signing up for races, I kept going back and forth, but finally I did it! :D

Today I ran my first race - Historic Hillsborough Half Marathon and Fleet Feet Five K. I ran 5K many times before, so I thought it won't be a big deal. But since moving to Raleigh I couldn't run outside as much for the terrible heat, and wasn't active as much for last couple of weeks for flu. Also, it was very flat in Illinois, but this race area was very hilly (of course it makes sense because it's Hillsborough!), for which I wasn't well prepared, and felt terrible when I had to stop to breathe. Anyway, I thought I was pretty slow and one of the last to finish, but was glad that I almost made it among the first half finishers :)



Overall it was a good experience and a good start. Now I know how it feels to run with hundreds of people, often for a cause, and can train myself for longer runs. Weirdly enough, North Carolina doesn't have many 10K races. Most of them have two options 5K or half marathon, which is a pretty big jump. I really wish I could do a 10K in between, but I think I'll start to train myself for a half marathon soon. 

The race t-shirt and the medal were pretty rad! Did they know that I love mustard color?! I think I'll be wearing this t-shirt a lot! :D
Race Goodies