First, let's take a look at the meaning of first language by Wikipedia:
A first language, native language or mother tongue (also known as father tongue, arterial language or L1) is a language that a person has been exposed to from birth or within the critical period. In some countries, the term native language or mother tongue refers to the language of one's ethnic group rather than one's first language.
Children brought up speaking more than one language can have more than one native language, and be bilingual or multilingual. By contrast, a second language is any language that one speaks other than one's first language.
I was born in Indonesia, a country with more than 700 living languages are spoken, and I'm fluent in Bahasa (Indonesian lingua franca) since I've been exposed to it from birth. And I've always been using it when I was a child, at school, or even when watching TV.
But since my father is a Javanese and my mother is a Malay, that also makes me exposed to those two languages (Javanese and Malay) from birth. Although I can't have any fluent conversation in those languages, and even lacking of the writing skills, I can understand most of the words from those two languages.
The thing is, all of those languages (Javanese, Malay, Bahasa) are considered to be in the same language group (Malayo-Polynesian languages). So it makes senses why I can understand them.
And for the case of English, I started learning it since I was six years old. I'm not that fluent in it, but I can have some fluent conversations with using it.
Now, based on Wikipedia, Javanese, Malay, and Bahasa should be considered as my first language because I've been exposed to them from birth. And English should be considered as a second language because "a second language is any language that one speaks other than one's first language".
Is that right? Because it seems odd to me that a person has several first languages. And I'm not that fluent in the case of Javanese and Malay.
For a comparison (just my opinion):
- Bahasa to Malay is like American English to British English
- Bahasa to Javanese is like English to German