Friday, October 3, 2025

Lonely long flights and why I love them

Drinks on the flight
I always have enjoyed long solo flights. It may be boring for many. Lonely for others. But I have loved those. When I think about why I love these flights a lot, I have an answer. These flights force me to sit and idle. Usually, I am not at complete rest, except when I fall asleep. But in flight, you give up control. I do not read books or use laptop in the flight. Sometimes I watch the entertainment system in the screen in front of me. But for most part, I just idle. That level of idling is not possible in ground transport. The ground transport gives you more control. You can stop in the middle. You have control. But the lack of control in a flight lets you relax and recall the past memories. It almost feels like time-traveling, when you completely lose yourself to your own thoughts of the past. That is a nice feeling.

Monday, August 25, 2025

Dead Internet Theory

Anchorage in Summer...
The fear of AI replacing software engineers comes a lot across our discussions. The issue I see is more of a self-fulfilling prophecy. Students regressing to "vibe coders" and using shortcuts, rather than getting fundamentals. Such behaviors could make them easily replaceable by AI or more likely by those who don't even have a CS degree. An enthusiastic manager may decide to "vibe code" themselves, rather than hiring a fresh CS graduate to vibe code for them.

On the other hand, if the CS graduate is very talented and knowledgeable in their fundamentals and latest technologies, they may become the ones who build the AI/LLM tools. After all, we still need CS folks to build those AI tools. Those tools don't build themselves. At least not yet.

Another argument that favors CS degrees are, at least for now, LLMs are good at individual programs - but they are not sufficiently sophisticated to configure and deploy complex systems. You can write some Python (or Java, Erlang, Go, ...) code with LLM. But it is still not possible to build a hybrid cloud architecture with load balancing and security policies configured. I can compare it with dishwashers. Dishwashers may wash the dishes - but you still need to do the initial cleaning (don't throw dishes in with huge chunks of food waste in them), loading, and unloading. These tools may have made our life easier - but did not eliminate house work completely (sadly).

Similarly, the AI/LLM tools may help eliminate redundant, repetitive, and boring tasks. But they won't replace the software engineers completely. But, if our undergraduates let the AI/LLM replace them, it will replace them (individually, not collectively). I emphasize in all my courses that students should see the AI/LLM tools as an extension to themselves, rather than a replacement to themselves.

Sadly, some students tend to misuse AI/LLM in places where it won't even function properly (for example, to summarize videos; ChatGPT cannot even watch a video!)

Another point is, coding is not the only job of a software engineer. It may be just 10 - 50% of the time. Rest of the time goes with attending meetings, making presentations, design decisions, testing, ... These cannot be replaced by vibe coding after all...

I also wonder... if humans stopped making content (blog posts, videos, drawings, audio recordings, ...) AI will continue to train on the slop it itself produced and keep regurgitating recycled slop. YouTube comment sections, Twitter feeds, LinkedIn comments, even YouTube videos themselves are AI slop. We are getting close to the dead Internet theory. Hopefully, it is just a minor, temporary phase.

Thursday, August 14, 2025

Academia and how it distorts your perception of age

9-month academic contracts and
a little vacation in Barbados
Being a student can be fun. Yes, childhood and school days are fun. But I am not talking about that. I am referring to the university life. Especially if you do not have to earn separately for that. A lot of people, including me, lived with their parents during their undergraduates. It is very common when your university is in the same city where you already lived with your parents or family. That makes the undergraduate life more of an extension to the high school. For me, the real fun started when I went to grad school - two years after the graduation from my undergraduate program. For most grad students, one year gap between their undergraduate studies and grad school is inevitable. Because, you apply when you are done with your undergraduate program (usually in the fall semester) and that means, you are accepted for the following fall - making it a year-long wait. Some choose to apply for grad school while they are still in their final year of their undergraduate program. Works best if they already are extra-ordinary. But does not work for most. However, working a little before applying for grad school can be good idea if your grad school is going to be in a foreign country. So I worked for one year before applying for grad school. That gave me a two years of job experience in between my undergraduate program and grad school. In Sri Lanka, school years is meant to be 1 - 13. It shifts the US K-12 system by 1, with kindergarten becoming grade 1. So, there is no additional time. But our A/L exams, at the time I was a student happened in next year August (a delay incurred by 2004 tsunami) and then the university entrance was following year's August. Two extra years added! I was among the youngest in my undergraduate batch and I was among the oldest during my MSc... because of these two additional years and that I had worked for two years - compared to 0 to 1 year of the others.

Then, in Europe, compared to countries like Australia and the US, you usually must do a masters before starting a PhD. However, their BSc programs are usually 3 years compared to our 4 years. Oftentimes, in the EU, students do an integrated MSc of 5 years, where they complete their BSc coursework in 3 years and do the MSc courses in the last two years. For me though, that was a 2 years of MSc followed by a separate PhD program. In the US, MSc is often coupled with the PhD. You could start your PhD with just a BSc, and you could quit with an MSc in around two years if you have completed the necessary credits, on your way to acquire your PhD. I went on to do a PhD in Europe (Erasmus+ for the win!). I loved it. I was not in a rush. I spent five years to complete my PhD. I had scholarship after all. It allowed me to live comfortably. While US grad programs usually last up to 5 years, my MSc + PhD was 7 years. This added two more years, compared to my US peers.

I went ahead and completed a postdoc for 4 years, before moving on to my tenure-track position. In the US, a postdoc is usually considered a trainee. Or even a "student." Being referred to as a "postdoctoral student" was annoying to me. Postdocs are not very common in computer science. I did mine in biomedical informatics, as part of the school of medicine. Postdocs are more common in medicine after all. They last up to 5 years. Anyway, compared to many of my CS peers in tenure-track positions, my postdoc added 4 more years. So, I started my tenure-track position after a whole ten years, compared to someone who entirely studied in the US and then went on to their tenure-track position without spending time in a postdoc position. A decade spent extra indeed: one extra school year, one gap between school to undergrad program, two years working in middle, two extra years during MSc + PhD, and the four years of postdoc! I started my tenure-track position at 36. This is basically the early career in the academia, whereas, one in IT industry in this age will be in a mid-senior level as an engineer director or manager. The tenure-track assistant professor position lasts up to 6 years before you get tenure and get promoted to associate professor. These "early-career" years give you some benefits - such as additional training opportunities and grants targeting just you! You are young again, while you are heading towards tenure and (first) promotion in your life, in your early 40s! Fine, I just admitted I spent a whole decade with the slow academic progress due to my Sri Lanka -> Europe -> US migrations and long years spent due to these circumstances. But I tend to believe academia in general makes you feel younger since you are early career while those who went to industry are well into their mid-career. I know there are goods and bads in how this distorted perception of age. That probably is for another post.

Tuesday, July 1, 2025

My new years since 2013

2015 NY Lisboa Hard Rock Cafe
Since 2013, most of my new years have been in Europe or the USA: 2013 (Lisboa), 2014 (Lisboa), 2015 (Lisboa), 2016 (Lisboa), 2017 (Zurich), 2018 (Lisboa), 2019 (Atlanta), 2021 (Kanab), 2022 (Utqiagvik), 2023 (Fairbanks), and 2024 (Anchorage). 2020 was my first new year in Sri Lanka again after eight years. Most new years have been quite exciting since I left Sri Lanka.
 
2013: Lisboa, Portugal.
Praça do Comercio/Lisboa, the most remarkable one ever.  My first new year abroad: my first one in Lisboa, with my EMDC friends. No other new year's memory could overtake that one, I am sure. We repeated this experience in 2014 and 2016.

2014: Lisboa, Portugal.
Praça do Comercio/Lisboa again, after a remarkable trip in Scandinavia. The second remarkable one was the 2014 new year. We had a cruise to Helsinki from Stockholm, then flew to Copenhagen, and also visited Malmö. But we came back to Lisboa for new year's eve. It was an eventful Christmas - new year vacation. A most remarkable year-end vacation to date.

2015: Lisboa, Portugal. 
This time in Hard Rock Cafe. We were too late to go to the Praça do Comercio and decided to go to the Hard Rock Cafe instead and had some drinks with the festive mood amid a huge crowd. 

2016: Lisboa, Portugal.
Back in Praça do Comercio. Same as 2013 and 2014. Crowded metro. We arrived quite late and couldn't reach the usual spot in Praça do Comercio. But we witnessed the firework show a few 100 meters away from our ideal spot in front of the river, blocked by a happy crowd.

2017: Zurich, Switzerland
2017 in Zurich was equally exciting when we traveled to Switzerland, Austria, and Liechtenstein. 2017 was also the first time we celebrated the new year in a country other than our resident country. No wonder 2017 became the year of travels.

2018: Lisboa, Portugal.
This time idling at home. 2018 was the first new year (since moving abroad in 2012 August) when we decided to idle at home during midnight. It also implied either we were getting used to Lisboa New Year's Eve and not too excited anymore, or we were getting old!

2019: Atlanta, GA, USA.
In SunTrust park. 2019 in Atlanta was quite fun as well. But we did not wait until midnight. The SunTrust park had countdowns for every hour since dark, at 8 pm, 9 pm, 10 pm, ..., giving a new year countdown experience early on.

2020: Moratuwa, Sri Lanka.
Back in home in Soyzapura. A vacation in Sri Lanka brought back memories of 2012 and earlier new years.

2021: Kanab, UT, USA.
A road trip with a colleague. It was a small boring town. But our hotel had a good view.

2022: Utqiaġvik, AK, USA.
A walk in temperatures reaching -40 to witness the fireworks on a frozen Arctic lake. A magical moment.

2023: Fairbanks, AK, USA.
Yet another Alaska new year. This time it was frozen Chena River.
 
2024: Anchorage, AK, USA.
First Alaska new year after moving to Anchorage. In between returning from Adak and flying to San Diego. So, we stayed home during the New Year's Eve.
 
2025: Shenzhen, China.
Extremely crowded OCTShenzhen and a boat ride in the river, enjoying the bright LED lights. 

Thursday, June 5, 2025

Before Sunrise

Vancouver, a day with friends.
I recently watched the movie "Before Sunrise" on a flight. How did I miss it for this long? The movie follows the two lead characters as they walk across a new city, enjoying minor activities, all while having a non-stop conversation along the way. One thing that I loved was how the hero did not try to make perfect conversations, and did not hide their imperfections and conflicts. The lengthy walk and the conversations reminded me of some of my days. However, one thing that stood out was their decision not to share contact details by end of the movie, and rather deciding to meet at the same location six months from then. This is obviously in close contrast with how I have (and most likely most of us have) dealt in similar situations. We do not leave the friendship or relationship in the hands of fate when there are technologies available to be in conversation beyond the day we bid goodbye to each other.

But it got me thinking. The "online phase" of a once a real-world close relationship often just make the magic fade away. The tail end may not be as exciting as those few days. The frozen memories are powerful. The person in the memory does not change or age. They remain intact until the time does its thing. Events happen in order. Memories does not have to follow the same order, although the ordering dictate the experience. The most beautiful aspect of an experience is the memory it leaves behind...