Nick Fisher's tech blog

Recent Posts

Java IO: Input Streaming

The sample code associated with this post can be found on Github.

In Java, the input and output stream abstraction can be used with file systems or across networks. While a lot of these abstractions have been abstracted even further away with modern libraries and tools (via servlets, for example), understanding the basics makes solving things like performance issues a little easier to wrap your head around.

The New New Thing, A Silicon Valley Story: Summary in Quotes

The New New Thing, by Michael Lewis, is a pseudo biography of Jim Clark, meant to be introspective of the modern day tech industry. While it was written nearly twenty years ago, much of the culture that was unearthed in the 1990s still remains in Silicon Valley, and the attitude of a man who founded three separate billion dollar companies is something to pay very close attention to.

Skin In The Game by Nassim Nicholas Taleb: Summary In Quotes

The topic of this summary in quotes is Skin In the Game. The book’s central argument is that people who don’t participate in both the downside and upside of something don’t know what they are talking about. Simply put, if you haven’t been chastised for failure in the real world and promoted for excellence in that same real world, then you will fail to actually know how the real world works.

The Java Stream API: Primitive Streams

The sample code for this post can be found on GitHub.

While Streams in Java would typically be used on POJO or POJO-like data structures, Java also lets us deal directly with primitive type streams. Thanks to Java’s type erasure, something like Stream would not work, as the type argument must be an Object.

The Java Stream API: Collecting Downstream Elements

You can view the sample code associated with this post on GitHub.

One interesting feature of collecting streams using the Collectors.groupingBy(..) method is the ability to manipulate downstream elements. Basically, this means that, after you group the keys of the map, you can further make changes to the collection that the map is pointing to. By default, it collects to a list.

Newer Posts