Posts

Showing posts from 2015

Linq Database Experiment.

I've recently run an interesting experiment. I created a set of classes that make files that are readable via the TextFieldParser enumerable and in the case of delimited fields it will pull in the first record as column names. The significance of this is that I can now use Linq queries and treat them like database tables. In addition to the flexibility of the text field parser I used a stream view on a memory mapped file for access to the table files. This approach allows larger files to be handled efficiently as long as the result set isn't large. Below is an example application I wrote to test these classes. The Linq functionality combined with these classes give us similar functionality to SQL select statements on structured files. On more than one occasion I've seen developers load information into a database and handle operations there to ease development. I believe using this technique will allow developers to use similar techniques without needing a full RDBMS. In a…

Google QUIC for Games?

I have a strong interest in the technologies used in games. In many ways I feel they represent the cutting edge of what we are able to do with computers. One of the trickier problems to solve is networking. Online games are highly sensitive to latency but also require reliability to ensure all players see the same world. Interpolation and other tricks are used to hide latency but it's effects are present in every online game I've played.

One of the topics that comes up when discussing networking in games is TCP versus UDP. I've read several articles and white papers on the subject and the argument really boils down to TCP is reliable and UDP is low latency. I've also used libraries that build on UDP to try to provide both such as ENet. My experience has been that you have to develop your security on top of those libraries in addition to your game specific networking code. These libraries do their job well enough but what if there was another option.
Enter Google's …

Hortonworks Certified Apache Hadoop Administrator 2.x

I haven't posted in awhile part of which is because the graphics card went bad on the machine I was using to develop SchaeferGL. In addition the possibility of a lower level API being released (OpenGL 5.0) may provide greater opportunities for performance gains. The other reason is that I've been heavily involved in a BigData initiative. As part of that I've been studying for the Hortonworks administrator certification exam. I passed that exam this morning so I am now a Hortonworks 2.x certified administrator.

There are some very interesting things going on in the tech community. One of which is Microsoft's partnership with Hortonworks. As part of that a Hadoop DotNet SDK has been released. The other interesting thing is Microsoft's plan to port DotNet to Mac and Linux and open source the whole thing. The reason I'm interested in these two developments is that YARN allows non-Java applications to run inside YARN containers so what I'd like to see is a Dotne…