I have always been fascinated by Cosmos, even though we are inconsequential in terms of the vast universe the fact that we are connected to it atomically and the ability to think about this things alone opens up lot of possibilities.
Today I want to share a paradox that paved the way to modern cosmology ideas, this paradox was stated by Heinrich Wilhelm Matthias Olbers (1758 – 1840) a german astronomer. Just to be clear at the time Newton’s view of universe being infinie and fixed was commonly accepted but Olbers’ had a problem with such views and thus he described this paradox in 1823.
So what is the Olbers’ paradox, you might ask ? It states that if the universe is static and infinitely large, any sight line from earth in the night must end at surface of a star. Now you might argue what if its blocked by dark clouds, well in that case the dark clouds would heat up and eventually they would be as radiant as the stars.
You might also argue that intensity of light from a star depends on this equation,
I ∝ 1/R² where I is the intensity of light, R is the distance between the observer and the star.
So in layman terms the greater the distance, the less intense the light would be and that would explain why the sky is dark at the night, right ? Well not really Olbers’ presents a very important mathematical argument,
Here, R is the distance between the shell and the earth
t is the thickness of the shell
so the surface volume of the shell would be 4ΠR²t
for N stars per volume = 4ΠR²t N
so using the intensity formula, I (intensity) = 4ΠR²t N / R², thus we get
I = 4Πt N which means distance is not effecting the intensity of light.
Now, this was for one shell for an infinite universe there would be infinite number of shells. each bigger containing the smaller one thus if we add all them for infinite number of time, e.g.
I = 4Πt N + 4Πt N + 4Πt N + …. we would get,
I = ∞
thus, at line of sight we would see a bright star and the night sky would be white instead of dark. So obviously universe is not infinite but there are other arguments need to addressed,
- What if if universe is not infinite but static ?
In that case, things won’t change that much as instead of infinite number of shells there would be finite amount. They would be still enough stars to light up the night sky.
2. What if universe is infinite and static but age of stars is finite ?
Again because the universe would be infinitely old, there would be infinite amount of stars at any angular direction thus the result would remain the same.
Things that we learn from Olbers’ paradox
The Big Bang theory explains this paradox as following,
- Since the universe is constantly expending (non-static) the light coming from the star’s wavelength is being expanded (because of doppler’s effect) and their frequency is lowered, thus they would be in microwave range in the spectrum and that is called “Cosmic Microwave Background Radiation” (Wherever you look in the universe there is CMBR hitting us) so while night sky is lit up even today but the light is not in the visible spectrum. Since its frequency is very low our atmosphere takes care of it.
- Universe expansion might be faster than speed of light, so star going further away from us is relative faster than light coming from the star.
So, we can say there must be a time in the universe when the whole night sky would be bright (white) when it was small.
The main reason why I wrote this post because Olbers’ paradox came out in 1823, there were no big bang theories around that time but the paradox did influence astronomers, which lead to “Big Bang” theory in 1930’s which would explain the paradox almost 90 years after Olbers’ lifetime. This is one of the reason science is wonderful, things are not built upon thin air but upon ideas of previous scientist and on based those ideas we discover new things and unravel new mysteries. I feel lucky enough to learn about this magnificent things about our universe.
Learning more about the Olbers’ paradox
I don’t think I will ever admit it but I do have regrets and there is one regret that sometimes keeps me awake at night, I know that the regret is silly but somehow even knowing that I can’t discard it and accept things the way they are. The regret I am talking about is starting late.
The truth is I started programming in my college and It wasn’t till my 6th semester when I consciously decided to get better at it. Right now I am a decent programmer not the worst of the bunch but not that great either. I am also aware that to become expert anything requires substantial amount of time and effort but it’s not easy (at least for me) when you realize that at your age many programmers started working on projects that essentially changed the world forever, sometimes its just hard to accept that whatever you do there are people who did things in order of magnitude of yours.
Well, this what I believed for a long time and this was something that held me back. No matter what I did there was a voice at back of my head stopping me from enjoying my work and making me regret that I hadn’t started earlier, it was till recent months that I realize how silly all of these things were and it made me think that the past doesn’t really matter as long as your learning from it. I realize this fact from one my early memories as a programmer,
In my early days of my 2nd year, I started hanging out on IRC. Most of my time was spent in this one channel which consist of people with interest in tech, since I was gamer back then I have lot of fond memories of discussing which GPU was better, how the latest AMD/ATi offering defeats the fastest nVidia card by 10% or which components are needed to assemble the ultimate gaming PC on a moderate budget. Though there was one discussion I hated the most, it was the dreaded Windows vs Linux. Being a gamer meant that I used to spent most of my time on Windows and since there were very few games on Linux which made me in turn stay away from it, so I used to come up with very silly arguments why Linux was terrible but that was mainly because I didn’t care about Linux instead of any logical reasoning, It didn’t have “The Witcher” on it thus it wasn’t worth my time.
I was so rigid about my views back then, I never questioned them I just assumed they must be true since more than 90% people in the world used Windows (and still do) thus it should be perfect for any kinda of task. I was very reluctant to try new things out since it might me lead to format my machine for the nth time (remember those old days when we formatted our machines every month or so 😛 ) but I am somewhat grateful that because of those people I somehow had courage to try Ubuntu in my summer vacations and that lead me to a many magical experiences in my 3rd year and beyond. Today I can’t even code few lines of code without relaying on the Unix command line.
It taught me two very important lessons,
- Always question things
It’s very important that you question things and develop your own reasons instead of blindly follow what others are doing, if you don’t know why you are using particular tool, technique or follow set of beliefs aside from the generic everyone else is doing it argument. I think its a good time to questions those things and find reasons for following/using them.
2. Don’t be reluctant to try something new
Being a programmer essentially means trying out new things, we have so many new things coming out every year and forming opinions without even trying them could be devastating for you. Why not spend a weekend trying out a new library or discussing with someone over the internet who uses it on regular basis and try to find his reasons behind it.
Finally , I caught up with one of my friends from the IRC channel few days back. He was impressed by what I had done in the past year and made a remark on how I grew past those stupid arguments. I think this is when it finally dawned to me it doesn’t really matter what you did in the past, as long as your learned from them and corrected your mistakes they really don’t matter much. I will be the first to admit that I didn’t like getting picked on back then but none of the things I am doing right now would have been possible without them. Why get stuck over the past ? just forget about them and move on and maybe you might find yourself cracking a smile or two about those things in the future.
Yes, it might be true that I haven’t done anything comparable to other amazing programmer in the world but I can’t change it right now, I can only make sure that I don’t repeat those things, open up to new things and try to get better consciously. I know this also means that I might never be that famous or awesome as the other programmers but does it matter, I mean as long as I enjoy programming something I don’t really need to justify to anyone.
Though I will accept that I haven’t overcome these feelings entirely and there are few days when I feel these regrets even now but when these feelings overtake me I just try to remind myself of these lessons and I usually get over them in few hours, in the end even the greatest programmers in the world gets joy out of programming and as long as you are having fun while writing code you already are an amazing programmer and the past, well it won’t matter any more.
(Note: This post is about lessons I learned from my college life and giving it a closure it deserves as I will be done with my college in two months of time and that makes my current days last of my college life.)
A penthouse of 2 bedrooms with a hall and a kitchen, a fifteen minute walk to the campus, the apartment is almost two years old and the rent is just 6.5k rupees.The rooms face west so you can have few extras hours of sleep in the morning and in two months time I am moving out.
I joined my college (R.V.C.E) in 2008, I wasn’t particularly thrilled about as it would be my first time when I would be moving outside of my home. My parents weren’t all that happy when I decided to go to a completely new city which we had only visited once before but they decided to let me do my thing when they saw me determined. Though when I started my college I faced lot of difficulties and the few months at the beginning were really slow, each day at the beginning felt like an eternity but now when I look back it all seemed like a dream which got over by a snap of a finger.
The college life wasn’t all that easy like seen in films, most of the days were filled with boredom and constant annoyance. There were tough days as well when I had to clear an internal exam to get a passing grade so I can write the final exam,dealing with uncooperative professor or studying for a subject that seemed too dry as I couldn’t see its practical usefulness.Back then I didn’t know my left from my right as I was worried about foolish little things and it all seemed like lot of trouble at the time but they are all happy memories now. All the memories which seemed annoying at the time crack me up now and sometimes I find myself with a faint smile.
I lived a very different life during my college time, normally people would go out on trips and have crazy night outs but I didn’t have many of those, I remember going out for just one trip with friends and one night out when we played CS till dusk. That might because I had different goals and I focused on them more, some of you who are reading this might ask do I have any regrets regarding my social life (like not participating in any of the college festivals or not having a large group of friends). I won’t say I was proud of being a loner and there were moments when I felt sad about the entire thing but looking back it was my own decision that led me to such state as such I don’t have regrets about it. I did what I loved back then and things which seemed right at the time, I wasn’t a bookworm or anything I just focused more on programming,animé, and gaming at the time cause I found them more exciting. At least I didn’t fake my lifestyle for sake of others or to look cooler in my friend circle ( that would have been depressing ).
But today when I was having dinner with my friends, I realized that in just couple of months college will be over and most of us will be part ways and go on with our lives on separate paths. I was naive when I was in school, even though I knew at the time that after my final year ( at school ) I won’t be seeing any of my friends but I never gave it much thought and sadly I have not been in contact with any of them. Though the truth is after college things won’t be the same, even if I stay in contact. There might be friends I will meet from time to time, few of them I’ll catch up with help of Google Talk,Skype and Facebook and many of them I will never see again but that’s part of life.
The funny thing is I will miss people who gave me a tough time as much as my close friends because they added variety to my life and made me appreciate my good times even more. The fact life is that everyone moves on with their lives at some point and those who don’t get left behind, life is all about finding new happiness,meeting new people, exploring new possibilities and learning new things.The moments I had in my college will always remain with me, I will cherish them as long as I’ll live but I also know that this time won’t last forever.
That brings me to this quote “In time, There will come a day when everything is just a memory”, as time passes I guess the day will come when all of this will just be a memory when I was there, all of my friends were there,in fact the entire wonderful period my life will continue to fill my heart with sweet nostalgia as I face the new chapter of my life.
All in all, in two months a brand new world will begin for me, one filled with new friends and exciting opportunity but I also know for a fact that even this won’t last for an eternity and thus I want to conclude this post with the following lesson that I learned from my time at college,
One day you will look back at your life with great nostalgia, This time in your life will be over before you realized it and it will all seem like a dream. There is no way to stop it from happening as we can only live any given moment once so the only way to succeed is to live each moment to the fullest and doing things you believe which adds value to your life, doing things for others will only make you regret later on, so when you look back instead of seeing regrets and things you could have done, you see hope and things that bring a smile on to your face :).
PS: This post is filled with animé quotes & references as a mark of a true Otaku.
Well they say in solitude you sometimes remember your fondest memories, I would like to share one with you folks.
Today morning I realized that it was March, now March might be an ordinary month for most of you but looking back I can say for sure it was and it still is special for me; I can clearly recall the events that occurred and how they changed my life.
A year back the first KDE conf India happened from 9-13th of March, I remember I was more of an ordinary student in the class, I had a decent GPA and I used to get by without much trouble for the most part but somehow on 9th I had an urge to attend KDE conf despite it had 700 bucks for registration and my HOD(Head of Department) had clearly denied the request to attend it, but I still went for the conference as it was happening right below my department.
I wish I could say that after attending the very first talk of the conference my life changed but in actuality nothing happened ; I met really smart people but that just increased my insecurity and I couldn’t follow most of the talks. I was doubting if I made right choice of attending it in the first place, both 9th – 10th went without any feelings that I learned something valuable, something which I could have followed and used in my daily life.
Than came 11th March, the day was normal till the afternoon after that we had a hands-on bug squashing lab, where young KDE developers would guide us by fixing a bug from KDE bugzilla. Since it was the last day for the talks and I was tired with all the information i received which I couldn’t made sense of; I wanted to skip the lab but somehow I didn’t do that for some reason. In the lab we had to solve a bug in Rekonq (a browser bundled with KDE) the bug description said that it had to something to do with ad blockers, now I used to browse the internet before and I knew a thing or two about how Ad-blockers work; so I quickly found the code/file which needed to be patched and it was more of a lucky guess then any real skill involved but that was enough as it impressed the KDE developer that were there.
One particular (Vishesh Handa) came to me and told me that I knew things and I should use my knowledge to write patches for KDE and there is something about it; when a complete stranger sees your work for the first time and praises you for it. I think I was on cloud nine for rest of the day; when I reached my apartment I started looking for sub project to contribute to and I found Nepomuk junior job page which basically consists of easy bugs which can help new people learn about the project, bug fixing and writing patches but I was naive and I didn’t know where you can actually find the source code, let alone any knowledge about version control systems.
Luckily next day it was a hacking session for the speakers; I took that opportunity to meet them and learn how to solve bugs and where to find help in case you don’t know what to do. They even gave me a simple bug to get started on which was quite trivial and would take around 3-4 lines of code to solve it but with all things that look simple while looking back, the bug took me more than 6 hours to fix as I was clueless on where exactly i needed to put that code in the first place.Though all of that work didn’t go to waste as I remember the feeling when that patch was committed on the next day. I was hooked after that commit and in 3-4 days I submitted even more patches which eventually got committed. After a month or so I finally received my KDE developer account to push my own commits.
Looking back, if I had not attend the lab or if that KDE developer (Vishesh Handa) hadn’t said those things to me, my entire life would have been completely different and I would be a normal guy today working at a MNC but thankfully life had better plans. So many great memories are the result of that one moment and in my heart I still have gratitude for KDE without it I wouldn’t have become a contributor, a GSoCer, made smart friends, visited different places, improved my programming skills and maybe biggest of all I wouldn’t be a part of c42 (The place I work at). My entire life from that single moment to the moment when I received my first salary is indebted to KDE.
Recently, I finally had the chance to catch up with one of my friend from KDE (Shantanu) whom I first met at conf.KDE.in . We kept delaying our meet because of our busy schedules but we finally caught up last Sunday and the last Sunday was on 11th March. eh, coincidences can be funny sometimes
Hello, i know its very late to post introductory post about my GSOC project but better late then never. So what does my project do , in nepomuk as of now any metadata written to its backend virtuoso remains only there which is good thing most of time but some files or other backend supports the ability to store the metadata itself.
i.e. MP3 files support ID3 tags , Images support exif data etc
This will finally allow Nepomuk to become a full fledged backend.
My Current Status :
I will break it down in to three sub categories
1) Plugin System :
This is a simple class which all the plugins are based on, it consists of virtual writeback method and finish signal, so all the plugins are coherent.
2) Writeback Service :
This service integrated with resource watcher monitors any changes in property of indexed metadata , if there is any change it will perform the writeback. The selection of the plugin is based on the mimetype currently which seems to be insufficient in the larger picture.
3) Plugins :
As of now i have two plugins ready,
1) Taglib Plugin:
I am using taglib to perform the writeback for all supported audio files, when there is difference in metadata in nepomuk and the file.
2) Lib exiv -kde Plugin :
This plugin is designed for image files , currently i am only writing for exif metadata for selected properties but its very easy to add more properties if needed.
My Future Plans :
1) Akonadi Plugin :
According to my mentors this would be a nice plugin to work on , since my current plugins only writeback to files this will be something different and it will be my first time working with async APIs.
2) Hybrid system for plugin selection :
As i said before right now my selection of plugins is based on mimetype but that’s not enough , selection based on rdf types would be better but it might complicate things for some plugins so why not combine both of them , and make a system that selects plugins based on either rdf types or mimetypes i am currently working on it.
So that’s it i guess, i will update this blog when i finish these things in the future. Any comments or feedback is always welcomed.
P.S. : My code can be found in kde-runtime branch called gsoc2011/nepomuk/writeback.
I had gone to Randa last week for my very first sprint, Randa is more than 4000 miles far away from Mumbai airport , it took me almost 16 hours to reach there and back but in the end I could say the experience was worth all the travel and few misgivings , I had lots of fun in Randa, I talked to lots of cool people , ate lots of different food, coded a bit as well, but more importantly I learned lot of things and I would like to share three important things I learned it Randa.
I am and always be a noob
The sprint at Randa made me realize how little I know about coding, how what I learned at college is actually implemented, and in the end it made me realize that I am still a noob but I don’t really see that as a bad thing, I mean there is always much to learn and to be honest understanding, asking questions (even if they are stupid), making (very) silly mistakes are all parts that make life exciting, I am happy that I am still a noob as it fills the life with a sense of excitement , though sometimes it does bother me a little but in all I hope I always be a noob so I can keep learning new things be it programming or any other thing for that matter.
On a side note, knowing me I am sure I annoyed lots people during the sprint sorry I didn’t mean to but it’s all right, that’s part of life too. Your not perfect but you gotta lot to give along the way.
Help is always there
The 2nd thing I learned is that the help is always there, in my time at Randa I realized that I was never truly alone that any of the problem I might have could be solved by simply asking for help. Whenever I had reached out my hand at Randa someone was always there to hold it and this was something I had never seen. I guess this is what being in a community is all about that when you need something, someone is always out there to help you, you just need to reach out for it and if you can do that you are never alone.
Finally the most important thing I learned at Randa was to trust people again. Trust is something we all have lost at some point of life, but events in Randa and even before the sprint began made me realize that there is still something called ‘trust’ in this world, how else could you explain , when someone vouches for you, and even readily agrees to pay 30,000 Euro fine if something goes wrong when you have never met that person in real life, or how about giving a developer account with which you can modify any projects in the entire organization, or allowing a person to stay at your house whom you just met few days ago when your even not there I could keep going on and on these events made me believe that people still trust each other in this world which is rare sight to see.
When you make a person feel that you trust him and that you believe in him is sometimes enough for that person to do his best and when people trust each other and work together on a common goal miracles are bound to happen and I truly believe that the entire KDE, no maybe the entire FOSS community is filled with such miracles and i just feel lucky to be part of such community.
In the end I would like to borrow a line from Shawshank Redemption
“Hope is a good thing, maybe the best of things, and no good thing ever dies.”
So I hope that I can get such opportunities in the future, I hope I can keep meeting such wonderful people, and lastly I hope I can keep learning new things forever 🙂
Hello, this is my first post on this brand new blog. I hope I can keep making regular blog posts. I would be making posts about my personal and technical experiences at KDE.