I've been programming in Java for over a decade. My past Java programming included work on core development and plug-in development for OpenJUMP. I also used Java to automate spatial data processing at Guida Surveying. I recently switched from Java to C# as my main programming language for the desktop.
My second favorite programming language is Python, which I use to script and customize ArcGIS for the desktop. I use Ruby programming to customize the 3D modeler SketchUp and AutoLISP and C# to customize AutoCAD Civil 3D.
My favorite IDE is Visual Studio Community Edition, with Eclipse in a close second place.
I'm a strong advocate of open source software and open technology standards.
My open source code is released through the SurveyOS Project, a member of the Software Freedom Conservancy.
I also publish open technical standards for GIS and land surveying at the SurveyOS Project. My current open technical standards are the COGO Simple Text Format and the Triangulated Irregular Network Text File Format.
I'm interested a few specific topics right now. Most of these are in the Dot Net/C# programming realm, but one or two have to do with Python programming.
I'm very interested in automated point cloud processing of data from Aerial LiDAR or terrestrial laser scanning using C#. I've started tinkering around with some code for this. My initial impression of the commercial tools for point cloud processing is the tools are limited and immature. Trimble Realworks has the best toolset and easiest user interface for the tools I've tried so far. (These tools I've tried include Leica Cyclone.) However, neither Realworks or Cyclone makes scripting to enable automated processing easy. The open source tools available for this are non-existent or very clunky. Point cloud processing is an area I'll be working more on moving forward.
An area related to point cloud processing that I'm interested in is TIN creation, analysis, and management. I'
I've also got an itch to scratch related to simple on-desk collections for C#. I like MapDB, but I'm unsure about its stability, and it seems a little more complicated than I want. It also switched over to Kotlin from Java (bummer). I want to see if I can play around with a simple key-value store or linked list using binary or text files.
My hot spots in Python mostly relate to GIS and QGIS in particular. I want to write my first QGIS plug-in to enable some of the basic editing tools we have in OpenJUMP. I'd also like to learn more about how I can enhance the map book/map publishing functionality in QGIS. I'd also like to contribute some code to Shapy...but my Python code might be too javalike for this. :]