The Freshman Experience
image

Oh look, I am in university now. So many cool things will take place, but on the other hand I fear for myself.

Honestly I haven’t felt like writing anything for this blog. Now I am slowly building applications and feel like I need to solidify my knowledge and experience before I can share any on the internet. I need to have something interesting.

The last time I posted anything significant was The Linux Experience, which should deserve a follow-up. Bascially, I don’t have any unique perspective other than the occasional issues and hotfixes. And as I am learning the ways of production environments, Linux has lost its novelty. Web developers are required to know Bash by default. If you work in Systems then you need knowledge of Linux. Indeed, I have been going around university and noone - except for some niche senpais - has gone beyond Win and Mac. But when I get a job, I will definitely use Linux.

I know that because I took an interview for a system programming position in a club. I didn’t get in, at least at the first try. Linux was one requirement, but so was Binary Tree, for example. I do know Binary Tree, as in “have read it in some books”; I just don’t know it well enough. You can imagine how the interview went. At least I came out with a refreshed perspective on the job market situation and brand new, more realistic goals to be accomplished.

What’s my current status? Well, I’ve been making a program in C. I say “program” because while my intention is to make an app - a GUI program - I haven’t got around to the “app” part. How to put this… Imagine you have to put some objects in a dictionary. To have a dictionary in C, it’s common practice to include a library that does this low-level job for you. Here I don’t do that as I set on to reimplement the dictionary abstract data type. I won’t make a good web developer. In web development, you are measured by speed, by how knowledgeable you are with the infinite array of libraries and frameworks and how to use/combine them. Here I just make everything from scratch. To add insults to injuries, I make them in C. It’s just how I learn things. I do argue, though, that this work pattern should be kept, but perhaps only at home. When it comes to production, your employers don’t pay you by the hours for reimplementing a library that has proven to work. But I want that feeling. So personal projects are to be expected - they’re oxygen to me.

On and on about production. On the other hand, I’ve been meaning to make the transition to embedded systems. I think it’s good to know how to fix that printer at home before moving on to high-level subjects. It’s a life-fulling kind of thing. I’m 18, and before long I’ll get no chance to ever sidetrack again, studying something other than CS. Think about it; I’ll have to get a part-time job at the end of the next term, then probably grind like hell to win contests to get to intern, … I want to fulfill my teenage years before it’s too late.

And one more thing. It’s time that I upgraded this site. Been using Jekyll since 2020. Static site generation seems nice, except I’ve gained no technical skills from using Jekyll (other than CSS). It’s bloated. It should have been just Node as backend and React as frontend.

So wish that my GTK app will get finished, that my React app will fair well, that I will install a USB port to my lamp, and that this site will be rebuilded with cooler technologies.



A weblog of Le Nguyen Gia Bao.
Powered by Jekyll. Forked and heavily modified from jekyll-theme-WuK.