Fast, lightweight Java classpath scanner

I just released an uber-fast, ultra-lightweight Java classpath scanner:

This classpath scanner is able to scan directories and jar/zip files on the classpath to locate:

  • classes that subclass a given class or one of its subclasses
  • classes that implement an interface or one of its subinterfaces
  • classes that have a given annotation
  • file paths (even for non-classfiles) anywhere on the classpath that match a given regexp.

The project is here: https://github.com/lukehutch/fast-classpath-scanner


Understanding the "full stack" of life

Some non-programmer friends were talking among themselves about computer programming a couple of days ago, and they were going back and forth about how they didn't understand programming but it must be complicated. One of them said, "Yeah, I just thought it was just kind of part of the design that made apps on your phone work the way they do."

For the first time I caught a vision of what technology would look like without a background in computer science or software engineering, and, strangely enough, it totally blew my mind. I had never really thought about what it would be like to have a technology integrated into every part of my life, accepting it on face value without seeking to understand it down to its fundamental axioms -- the algorithms, the logic circuits, the bits, the transistors. I know that technology is not something that gets everybody excited, but I don't understand how people can operate only in the realm of high-level abstraction. I cannot function that way, I have an immense drive to understand everything around me -- everything I see, use, interact with and experience.

I then realized though that dealing only in high-level abstractions is exactly what humans have done for millennia with biology: treating human beings and other organisms as high-level, abstract entities, without understanding (or without in most cases seeking to understand) their axioms and composition. We did lack the observational tools until recently to introspect our biology at microscopic and molecular levels, but throughout history, as is true today, most of society has not even concerned itself with seeking deeper understanding. There is immense value in dealing in high-level abstractions, but to truly understand a system, you really have to understand "the full stack".

Now we're finally starting to understand the axioms of biology, and what we are seeing and understanding is incredible. A friend sent me photos today of his single-cell fertilized IVF embryos. A fertilized egg is the most amazing thing in the world: it is the very first domino, set in motion, in the most amazing and intricate self-stabilizing, order-creating chemical reaction known in the universe. Think of all the quintillions of steps and interdependencies in this reaction that end up forming an adult human... all packaged up into only about 10B bits of information, within a biological information processing machine. And even more amazing than the biology itself is our ability to introspect and understand our own very composition. Think about how incredible that is to be a being that is not only intelligent and supremely intricate and complex, but a being that is able to understand its own structure and functioning -- eventually -- down to the axiomatic level. If that is not the very definition of transcendent potential and even nascent divinity, I do not know what is.

I ran into the XVIVO founder David Bolinsky for the second or third time a few days ago, and was reminded of the amazing video Inner Life of the Cell that he produced a few years ago: