`

First Post of 2019

Posted: 8 February 2019

First post of 2019 in February instead of January! Well, that’s not too bad. I was really busy in January and did not carve the time out to do a review. This is not an excuse though. I just did not try hard enough. This post will be about reviewing what I set out to do in 2018 first, followed by the books I read in 2018, and the goals for 2019.

So the goal I set in 2018 was to get back into Artificial Intelligence (AI). I’ve clearly failed at that as I did not read as many papers as I wanted to. I read the best papers from various conferences and got the main ideas out of them. As I’ve experienced previously, I found it really hard to deep dive into a paper and understand the details. The math is too complex and it probably isn’t worth the effort unless I’m writing another paper to improve that existing method, doing a Masters, or doing a PhD. In light of this, keeping up with AI in 2019 would probably involve doing a side project with TensorFlow. However, this would probably involve more engineering than actual math. In hindsight, this probably isn’t too bad as I would be building something useful. The goal for 2019 in AI would be to have a side project that gets 1000 GitHub stars.

I think I’ve progressed a lot on Software Engineering in 2018. I started doing more HackerRank and Code Jam and am writing it in C++. C++ is really quite an enjoyable language and I look forward to coding more in it. In addition, my work involves coding as well so I have progressed a lot more on this front.

On Cryptocurrency, I’ve basically been reading snippets of news here and there to get a sense of what’s going on there. Nothing much to talk about here.

On General Knowledge, well, I guess the books I’ve read have given me quite a bit of general knowledge. This is a good segue into the books I’ve read in 2018. I did not read as much in 2018 as compared to 2017. That isn’t the problem though. What I find is the problem would be reading something for general knowledge when it is not applicable in my current life. In 2017, I read a lot about start-ups and how they navigated inflection points and the likes. I still remember the Intel story, Ben Horowitz, Rework, Art & Fear and various other books that helped me think about how to do a start-up. In 2018, I read a lot of technical books like High Performance Spark, Spark: The Definitive Guide, among other technical books that helped my work - though these were not listed on my page as there really is nothing to list about it. The other general knowledge books I read in 2018 are interesting as it gets me thinking about the longer term things in life (think 30 year horizons) and of course biographies and autobiographies. At this point in time while writing this, I realized I forgot to add in the autobiography by Sam Walton! I find it helpful to read about how these people managed to build their companies, but at the same time not helpful as this is the 0.1% that succeeded. We hardly hear about the 99.9% that failed. Reading these books gets repetitive after awhile - I should switch to reading the biographies of older people like Ben Franklin (still in my cupboard, haven’t gotten down to it).

I chanced upon an article by Warren Buffett previously and he talked about this thing called “compounding knowledge”. Coincidentally, I met a friend today and he told me about this thing called the “half-life” of knowledge. For example, things like AI have a really short half-life - what you know now is outdated next year when ICML and NIPS have new papers. You have to be a researcher to win in this field. However, having strong fundamentals in math has a really long half-life. All of AI now is based on math. You want to focus on building knowledge on these long half-life concepts. Essentially, get a deep understanding that will not get out of date in 30 years time. One such industry would be the finance industry. This has existed since the first coin was minted, and will probably last for pseudo-eternity.

It was a great 2018 as I’ve progressed a lot on Software Engineering. For 2019, the focus is to build up on fundamental knowledge and this would involve:

  1. Code more HackerRank, Code Jam, etc. Algorithms are fundamental concepts. You might not be expected to code a Floyd-Warshall or something complex within 2 hours, but you must at least know these exist and map existing problems to these well studied problems by researchers in the 1960s. You might argue that one day programmers will be replaced as we have “automated programming AI” - I think that reality is quite far away. We can have assisted at best, like Kite, the company.
  2. Have a side project in AI that gets 1000 GitHub stars.

Just 2 goals for 2019!