A billion-dollar apology from the creator of the famous NullPointerException.

A billion-dollar apology from the creator of the famous NullPointerException.

This is one of the most famous keywords in every programmer's dictionary. Even after decades, programmers couldn't escape this error every now and then. It's by far the most prevalent kind of error in Java and many other programming languages as well.

Tony Hoare, the inventor of the null reference apologized in 2009 and denotes this kind of errors as his billion-dollar mistake.

I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn't resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.


Kotlin and TypeScript are safe from the billion-dollar exception, or almost.

赞
回复

要查看或添加评论,请登录

Saransh Bansal的更多文章

  • Beyond the Code: A Developer’s Journey to Engineering Leadership

    Beyond the Code: A Developer’s Journey to Engineering Leadership

    "Stop chasing perfection, and start chasing progress." There comes a point in every individual's lifetime when you want…

    8 条评论
  • CV writing 101 in 2022 - Play the system

    CV writing 101 in 2022 - Play the system

    About you Are you someone who is not receiving enough job interview calls despite having a superstar profile? Do you…

    1 条评论
  • Oracle SQL Developer - Did your connection break again?

    Oracle SQL Developer - Did your connection break again?

    This article is written with the same intent and the similar amount of frustration as Oracle SQL Developer - Did you…

    3 条评论
  • Python/Django + ReactJs: Designing an Analytics Dashboard Part 1

    Python/Django + ReactJs: Designing an Analytics Dashboard Part 1

    We live in a world where every company is a technology company and where data is often treated as the new oil. In our…

    5 条评论
  • SOAP Web Service: How to deal with local WSDL files

    SOAP Web Service: How to deal with local WSDL files

    I have been working with Web services from the very first project of my career. I worked for a very large Telecom…

    1 条评论
  • Oracle SQL Developer - Did you forget your password again?

    Oracle SQL Developer - Did you forget your password again?

    The June 2015 article from daily mail coined a new word, "password rage", for people who consistently forget their…

    39 条评论
  • Careful! Microsoft can erase all the data in your new iPhone

    Careful! Microsoft can erase all the data in your new iPhone

    This is not a hoax or a clickbait article. It seems that some Microsoft applications (Microsoft Exchange in my case)…

  • Read files in Java with Java 8 and NIO.

    Read files in Java with Java 8 and NIO.

    Java 8 comes with lots of smart features out of which the new Stream API Operations and Lambda Expression received the…

  • Echo of the deaf - Michele Westfall

    Echo of the deaf - Michele Westfall

    At least once in our life, we all must have bumped into a deaf person. I don’t know about others but I always felt a…

    2 条评论
  • Transitioning from RelationalDB to MongoDB

    Transitioning from RelationalDB to MongoDB

    NoSQL databases have emerged tremendously in the last few years owing to their less constrained structure, scalable…

    1 条评论

社区洞察

其他会员也浏览了