Entries from January 2007 ↓
January 24th, 2007 — Personal, WordPress
I am experimenting with my new theme, trying to get pieces of it just right, so if you have troubles reading it, please take a screenshot of it and link to it in a Comment. The header rotates between 5 different images at random, so you may see a different one every so often.
A little about the theme…
I built the theme based a bit off of K2, in that I included the code for the Sidebar Widgets. Other than that, it does not have anything else related to K2. Some of the plugins it uses are “Collapseable Categories”, “Bunny Tags”, “IG Syntax Hilite”, and “Sociable”. There are a few more Admin related plugins, but those have nothing to do with the theme.
Depending on my satisfaction with the remaining pieces I need to work out, I may allow the theme to be downloaded, but for now, its just going to sit here until I know all is well.
January 18th, 2007 — .NET, Personal, Work
As a programmer/software developer, there are days that are just mentally exhausting. Today was one of those days for me. I have been working on a bridge to allow two systems to easily communicate with each other for the past month (really, i should say, I have been working on it off and on, you know how priorities go…).
The bridge is fairly straight-forward, if you completely know the products you are bridging together. However, I had to bridge eight different applications with another outside (as in, outside our network) application. Three of the applications I know very well, as I played a significant role in their development. One of them I knew fairly well and could easily figure out as it was written in an old language our company used that mimics JavaScript. Three of them, of which I have had no interaction with were also written in the older language, and so I figured them out, but it took more work than the prior applications. Finally, the last one I have hardly had any interaction with and it is in .NET… yet it is the one that has been giving me troubles for the past week.
.NET is easy and overly complicated at the same time. Poorly designed code can quickly confuse even the best of minds. Then add on code that is written in the application but never physically used, just adds on to the complication and torments the developer trying to learn how this program works. That was today in a nutshell. Code found in one place that looks exactly like what you wanted to see, ends up never being used throughout the rest of the application for unknown reasons and to top it off, when you ask the developers who work in it on a daily basis, they too have no idea why that code exists.
Don’t get me wrong, I am not here to bash the previous developers who wrote this mysterious code, but to give myself a mental note. Remove code that is no longer used from the project as soon as it makes sense to do so. Leaving it behind will only lead to greater complexity and much more confused looks on future developer faces. None of that is necessary and I for one do not want to me the reason for their headaches or confusing moments.
On the plus side of things, I got my issue worked out with the bridge and only have five more pieces to get the communication working smoothly. Plus, after racking my brain for several hours today sorting out the complexities and the confusing code, it is just FANTASTIC to see the part work right before my eyes so I know I figured it out entirely.
January 14th, 2007 — Kubuntu, Linux, Personal, Ubuntu
I have been looking for a way to login to my other PCs which have no monitors, and for the most part SSH works fine, but lately I have found myself wanting to create more of a testing environment setup without using a Virual Machine. Enter ‘Remote Connection using XDMCP’.
There are a few things you have to do to the machine you wish to login to first before you can use this nice feature. First of all you need to modify the /etc/kde3/kdm/kdmrc file and set make sure you have the following:
[code]
[Xdmcp]
# Whether KDM should listen to incoming XDMCP requests.
# Default is true
Enable=true
# The UDP port on which KDM should listen for XDMCP requests. Do not change.
# Default is 177
Port=177
# File with the private keys of X-terminals. Required for XDM authentication.
# Default is “”
KeyFile=/etc/kde3/kdm/kdmkeys
# XDMCP access control file in the usual XDM-Xaccess format.
# Default is “/etc/kde3/kdm/Xaccess”
Xaccess=/etc/kde3/kdm/Xaccess
# Number of seconds to wait for display to respond after the user has
# selected a host from the chooser.
# Default is 15
#ChoiceTimeout=10
# Strip domain name from remote display names if it is equal to the local
# domain.
# Default is true
#RemoveDomainname=false
# Use the numeric IP address of the incoming connection on multihomed hosts
# instead of the host name.
# Default is false
#SourceAddress=true
# The program which is invoked to dynamically generate replies to XDMCP
# DirectQuery or BroadcastQuery requests.
# If empty, no program is invoked and “Willing to manage” is sent.
# Default is “”
Willing=/etc/kde3/kdm/Xwilling
[/code]
Next you need to modify the /etc/kde3/kdm/Xaccess file. For ease of use, I made it so any host (’*') can connect and the CHOOSER BROADCAST was set to ‘*’.
Once you have that finished, you then must restart KDM. From the command line or the TTY login, run “sudo /etc/init.d/kdm restart”.
Now you can login to the remote machine using XDMCP. Enjoy!