Hello World bis

Or should I say hello again, Internet. This is a new chapter of my life on the Internet, under a new identity. This blog is about the raw thoughts of a lone software engineer. There won’t be much worth sharing, rather this is more of a place for me to voice out some unpopular opinions about the tech industry, and mostly unorganized rants.

In my previous life, I lived somewhere in Asia. In the small town I grew up, people knew little about technology and I was a lone geek learning programming on my own. Since then I learned many programming languages, including Perl, PHP, Java, C++, C, Ruby, Python, JavaScript, and Haskell. I love the art of writing beautiful code, and I seek for the ultimate solution for writing modular software. I write my own web framework, and I am interested in fundamental computer science topics such as compiler design and operating systems. You can say I am pretty good at programming, or at least that is what I hoped.

When the age of social media came, I posted a lot on Facebook about my thoughts. I was passionate in educating people about new technology and how to write good programs. At that time I was still in university, and the tech bubble was booming. Suddenly programming became cool and everyone was looking to hire programmers. I had great hope that technology will finally change the world to a better place, but then that dream get utterly broken.

The thing that first changed me was when I took my first job after graduation. It was a small startup that make programming tools, so I was all excited about the possibilities. The startup used Go, which was a new programming language at that time, and I thought I’d take the challenge and learn another new language.

It turned out I absolutely hate the language design of Go, especially the lack of generics. Together with that I criticized many things in the startup, including the libraries used, code written, and business decisions. My emotional intelligence was terrible and it reached a point that I was in the verge of being fired. It turned out I was just a “junior” developer and I was supposed to listen to advice from the senior developers, not the other way round.

My confidence was completely shattered, and I didn’t know how I could continue to survive. I realized that a professional workplace is completely different from how I had imagined. Tech startup or not, there are just so many hidden rules around the workplace of how to be “professional” and look good on your resume. Since I was just out of university, I feared that being fired on my first job would have cascading impact to my career.

My career crisis was not the only thing that changed me, rather it was a inflection point that caused me to become disillusioned of many things.

Debating on Go made me realized that many programmers simply do not care as much about programming as I do. Instead there was a trend of anti-software abstraction movement that put fault on people writing complicated code that “regular” programmers cannot understand. Put it another way, I am one of the arrogant architecture astronauts who can write great code but cannot work well with others.

While I was tempted to insist that it is important to learn new programming concepts, I also realized that I will still have to deal with the same kind of programmers in future working environment. Some of them will even be my superior or manager. It was way too risky to hold my own opinion and get myself fired again.

It was also at that time that I realized the Internet is becoming more and more dangerous. The social media have been occupied by trolls and social justice warriors. Fake news and outrages were everywhere, and facts no longer matter. People no longer share about their personal lives on the Internet, and I was just one of the victims of self censorship.

I felt increasingly pressured to not write anything on the Internet. People in power, including my current and prospective bosses, tend to share very little about themselves. So it made me uncomfortable about how they can use the information asymmetry to decide about my life without me knowing anything about how they really think. It also doesn’t help to bond with coworkers or clients, as political savvy people always assume there are hidden meanings behind every word, and my posts would easily cause misunderstandings if I don’t phrase things properly.

Over the past few years, I have slowly disappeared from the Internet. I even deleted my old blog in fear of prospective employers see it and shape opinion on me based on things I said many years ago. The online persona that I have built up for so many years is dead, and all that’s left is an empty shell that say how I am an expert in my fields and why people should hire me.

Back to my real life story, I quit the startup soon after and found another job through a connection. The startup closed down a year later, as there were mismanagement and many others left after me.

In the new company I did a great job by keeping super quiet and do everything I was asked for. I got a lot of praise and was “promoted” to be given a senior title. We had a great engineering team though I did not share much about myself to others. My biggest accomplishment there was to put down a good resume entry and “prove” that I am a capable employee.

Turned out keeping myself quiet had help me a lot on surviving. I had some doubt about the business strategy of the company, but I had put a cold heart on it and never questioned it. Two years later there was some political dispute, everyone left and the company was closed down.

I am now at my third job, doing things that are closer to my interests. I got to collaborate with people from over the world, some at top tech companies. I appreciate the opportunities I got here, and I hope to leverage this and eventually land myself a job at one of the big tech companies.

But until now I still never gain back the confidence I have on my own programming skills. I am always in fear of doing a bad job at my work, or being labeled as an incompetent programmer. I never feel ease of writing under a professional identity. I feel that whatever I write can cause some undesired opinion on me about how capable I am to work as a professional software engineer.

There are many things that I want to talk about, and I have been suppressing my voice for many years. I feel part of myself dying day by day, for not being able to say what I truly think. Even though my career is getting more successful, I am getting more depressed and lonely for acting so fake in front of people.

So who I am really? I am really just a lone programmer who like to do things on my own. I am an introvert recovering from Asperger’s syndrome who really don’t like interacting with people. I am bad at teamwork, and I am always late to deliver. I am an architecture astronaut who likes to overengineer on every piece of code. I am a functional programmer who would curse on badly written imperative OOP code, and turn them into high order functions that “regular” programmers cannot understand.

I know many people dislike the kind of programmer I am, but I just couldn’t care it anymore. I want to be proud of who I am again. I want to write whatever I want again, and bring back the Internet we had in the old days.

It was recently that I thought of I can do this under a pseudonym. I hope that under this new persona, I can write my thoughts without causing implications to my real life connections.

I want to complain about negative opinions I have about people around me, but I do not want to hurt their feeling or reputation. Very often there is nothing wrong about them individually, but I think of it as more of a human problem that I cannot bear in general.

Moreover, just because I am blogging under pseudonym doesn’t mean that I am safe from the hostile Internet. I have done very little to cover the trace of my true identity, and I am sure people will find out if they care enough. My highly opinionated thoughts on programming can still offend certain group of programmers. If I talk about anything that cross the line of political correctness, I am sure the social justice warriors will be of all rage to find out who I really am and punish the hell out of it.

But I couldn’t worry more about any of those or I would never able to write anything again. All I can do is to put a disclaimer that this blog is just about raw, unorganized, and unpopular opinions that I want to shout out. There will not be any point I try to make, or call for action for people to take away.

I hope not many people will read this, and certainly don’t hope this to get listed on Hacker News. For readers reading this, if you happen to know me personally, I’d appreciate if you could contact me privately and not reveal about my real identity.

If you happen to read this by any random chance, I really appreciate your time and attention. In this age of attention scarcity, I wouldn’t expect many to read long and unorganized posts like this one. With or without support, I will continue writing my thoughts, either here or some other place.

Thanks for reading.

Show your support

Clapping shows how much you appreciated Marco Turing’s story.