Which Programming Languages Should I Know? (Part 1)

by Codewiz51 5. December 2015 08:14

I'm in the final 6 to 8 years of my "working" life. I'm looking at the languages that I need to know going forward. I define "know" as being competent at developing solutions with the required language.

This is part 1 in my analysis of where I need to focus my efforts going forward.

JavaScript is an absolute requirement. It is the lingua franca of the web, and is becoming popular with the server side crowd.  JavaScript and one of the major frameworks, such as Angular is an absolute requirement.  Even though I mostly manage developers and development efforts, I need to know this language to be effective.

I've also decided I need to know one popular Windows backend language, probably C#.  I also need to know one Linux side language, which at the moment will probably be Java, as I like it's similarity to C#.

However, there is Python and Ruby Rails to consider.  And one needs to be knowledgable of Big Data coding and querying.

As for the database side, I am currently pretty well tied to SQL Server and PostgreSQL with PostGIS.  While I have enthusiastically adopted PostgreSQL/PostGIS, my not so great experience with Hibernate and geography fields have tended to push me back to SQL Server and Entity Framework as an simpler and better integrated solution.

So, I'll continue to explore where I think this is all headed.  I need to focus my time and learning skills on those programing environments that will be needed over the next few years.


Design | Life | Programming

When you transition from a code monkey

by Codewiz51 17. July 2015 06:01

I pretend to develop software for a living.  As much as I would like to claim I develop software, I really only dabble in it as a hobby nowadays.  I'm older now, and my coworkers and supervisors depend on my experience for a number of functions other than entering code into an editor: estimating, advising on technology, working out project plans and most importantly, organizing people to get stuff done.  I'm afraid my usefulness as a code monkey has passed.  I worry now about transitioning applications developed with new technologies to our current production environment.  I have to ask questions like: "How do I support your software?"; "How do I determine the source of exceptions in your code?"  As developers hurry to adopt new technologies, I have to be concerned with how we support the application.  How does this technology fit with our ability to administer it: how do we secure data delivered by a node.js web server?  Have we really secured our JBOSS server properly?  How well does active directory integrate with Red Hat's OpenShift?  Linux, Apache and JBOSS may be old hat to many, but our administrators are having to make a difficult transition for our newer applications and environment.  Training is time consuming.  Working training in to a busy administrator's schedule is not an easy task.  Determining the most effective training hasn't turned out to be very much fun either.  Even our developers are learning of the difficulty of keeping Java updated and in sync with JBOSS releases, keeping SOLR updated and making code changes for breaking changes in the patches is not proving to be an easy process.

So, to sum up, there is no magic bullet.  Someone will always be looking for the next new thing to help software developers.  But I'm relegated to slogging along, making sure we can implement the technology in a production environment; that we don'y give away the keys to our kingdom because we didn't know how to secure a new technology.

Tags: , ,

Java | JavaScript | JBoss | Programming

Vacation, Staycation and Coding

by Codewiz51 2. July 2014 08:13

I'm taking vacation this week, and honestly intended to do more coding.  However, I find myself doing a lot more around the house than I envisioned.  The weather has been unseasonably cool in Oklahoma and I find myself on my mountain bike a lot more than I anticipated.  I like to ride for distance at Lake Hefner, and I ride for excitement on the Bluff Creek trail.  I am in sore need of decompression time.  Sometimes, you get wound up in your job so tightly, you forget to balance your work and personal time.  Perhaps, this afternoon when it's supposed to get hot, I will retreat indoors and do more than vegetate on the couch.  (Or maybe, I will just read some science fiction.) Cool

Update: I made 2.5 laps today on the bike trail at Bluff Creek.  Not a stellar time, but at least I made it.  Not hot, but very humid.

Tags: , , ,

Life | Programming

I've drunk the Enterprise Library 6 Kool Aid.

by Codewiz51 29. June 2014 18:42

I've never really been a fan of Enterprise Library, until I had to assist with a coworker's project.  He had used Entity Framework and Enterprise Library in his MSMQ project.  I was really impressed with the logging in the project and the flexibility.  So I decided to bite the bullet and start anew with Enterprise Library 6.

So, here I am with a shiny new library downloaded from here: Enterprise Library 6 April 2013

I downloaded the eBook documentation here.

And the example applications are at this link.

So far, this is good stuff.  Not great, but solid and useful.  It applies some order to what can be a disorderly process.  I am deeply into studying Unity at this point, as I just completed some work in Java, using CDI and Weld on Jboss, complete with dependency injection.  The comparisons are favorable, although I like the annotation approach used by Java a little bit better at this point.  But this is just an opinion on semantics.

Update: Be sure to execute the logging example with Administrative privileges.  The program needs to add an event source, and you need to be an administrator to perform this task.

This blog entry for the Ent Lib 6 team is a bit dated, but still very useful. Just released - Microsoft Enterprise Library 6

I was not able to get the EntLibConfig.exe program working correctly. I came across this web article and found I needed to execute install-packages.ps1 by right clicking and choosing Run with Powershell.



Switching to Git from TFS

by Codewiz51 25. December 2013 09:44

I've been involved with Git at work since late May of 2013.  Transitioning to Eclipse, Java and Git was a bit intimidating in the beginning.  However, after some bumps in the road learning how to utilize Git, I became a convert to this version control system.  It's light weight, fast and runs well on Windows Server 2012.  I'm slowly migrating my projects off of TFS 2010 to a local Git repository.  What really sold me on Git is the ease of branching and merging operations.  Then, I discovered the add-in component for VS 2013 works as well or better than Eclipse's integration of Git.  About the only thing I am losing when I leave TFS is work item tracking.  However, that function will be filled by a $10 copy of Jira for my personal use.

I don't own powerful server hardware.  So Git is a Godsend compared to how TFS 2010 and Sharepoint 2010 drag on my outdated servers.

This series of blog posts will cover my experiences installing and configuring GitStack.com's version of Git for Windows:

  1. Stuff to download: (Prerequisites)
    • First, check out this post on MSDN to make sure your VS 2013 git client is operational. I strongly suggest you make sure you can connect VS 2013 to a github or bitbucket project and clone successfully before you even begin downloading anything else.  (I started out using github, but switched to bitbucket.  Bitbucket allows me access to Jira functionality (issue tracking) and code reviews (limited.)  It's free and allows private projects.
    • I like to install a command line git tool.  I use Chocolatey to install git command line tools.  I've run into some issues getting this to work over SSL, but I've solved all the problems and documented them in this series of articles.
    • If you are going to use Git over SSL, you'll may need OpenSSL for Windows.  GitStack needs an RSA key file, and OpenSSL is the only way I know to generate this file and create a certificate request tied to the key file.
    • You'll need the gitstack.com git installer.
    • I generally like to have a copy of Cygwin available.  This is completely optional, not required and not really used for this install (unless something goes incredibly wrong.)
    • There's probably some other stuff I've forgotten.  I'll add downloads here as time and memory permits. Cool
  2. Install
  3. Configure ports
  4. Firewall Changes
  5. Users and Groups
  6. LDAP/Active Directory
  7. OpenSSH/CertSrv/SSL
  8. Testing
  9. VS 2013 and Git
  10. Git-tfs

Since it's Christmas morning and the family is waking up, I'll fill in the details later today and tomorrow.  I need to go prepare Christmas breakfast for the World of Ware Crack crowd.


Design | Infrastructure | Programming


This blog represents my personal hobby, observations and views. It does not represent the views of my employer, clients, especially my wife, children, in-laws, clergy, the dog, the cat or my daughter's horse. In fact, I am not even sure it represents my views when I take the time to reread postings.  So, take most of what I say with a grain of salt.

© Copyright 2008-2014