Hi! Welcome...

Jack of trades, Master of some. Working towards the unacheiveable goal of Expert.

20 September 2008 ~ 3 Comments

XBox 360 Red Ring of Death

Yep, the title pretty tells the story. I’m getting the damn RRoD of on system, I have it just short of 1 year and it is crapped out, freezing in the middle of play. I’m getting the general hardware failure lights, which luckily MS has extended the warranty for this failure out to 3 years. I am not sure if this is lucky or not, b/c of the extreme number of problems they have been having. Some people are speculating that the numbers are over 30%, but with some of the newer development on the 360’s the number has dropped to 10%, that is still a hell of a lot.

Oh well though, I signed up to http://service.xbox.com and had a service repair registered. They are shipping the the box and information to ship it back, they are paying for everything. I’ve read they say 2 – 3 weeks for a replacement, but some have reported getting one back within 10 days of the day they started the process.

It’s going to suck the next 3 weeks with no Madden :/

15 September 2008 ~ 0 Comments

Browser Compatibility Rant

Just got down spending about 3 hours trying to get a simple gallery page to render the same across multiple browsers. It is crazy trying to get all browsers to work. I think we are dropping IE6 and FF2 from strict compatibility tests. As long as the data is rendered, we are calling that good. But that still leaves, FF3, IE7, Opera, Safari and Chrome. And we have IE8 around the corner, which will initialy just be a render data in a readable format.

The issue we are having is inside Webkit based browsers (Safari, Chrome, Midori, and many others). The have our CMS applying a wrapper to a basic php gallery page. This page uses jquery and galleria to handle the image transitions and such using ajax. Works great on the browsers by itself, and after a bit of CSS work for IE7 works great on that and FF3. But once done, Safari and Chrom wouldn’t display the ajax content when the page is loaded directly. Hitting refresh though, the ajax / javascript engine inside these browsers decides to work, and everything works great. It is the craziest shit I’ve ever seen. Nothing changing besides hitting refresh.

Which brings on to my biggest compliant, UI design sucks. It isn’t even for Web Design, but designing applications to work on a variety of interfaces is going to cause problems. Windows has done a decent job of not changing things too much between major backends, so apps developed for 2000 should look find in XP and Vista … should, but not always. But look at java apps, that share the same code for Mac OS X, Vista, XP, Linux (KDE, Gnome, Fluxbox, etc, etc) and it has some small issues that araise, you got font issues, DPI, resolution, window decorations (or the lack there of). It is a huge issue. And people (end users) don’t look toward the person resonable for their platform (firefox, IE, Apple, Gnome) but instead to the individual developer to create special cases for all these different idiosyncrocies. And we, as the small developers, bend over, take it, and try to get all the wrinkles ironed out.

While choice is good for the consumer, it sucks for those trying to create things to work for the most amount of people. Next to writing a custom interface for every single option out there, there are going to be some that run in a degraded mode, ignored, and in the extremem cases not even work.

Okay Rant Over – back to work.

10 September 2008 ~ 2 Comments

Redmine Follow Up – LDAP and AD Authentication

In a previous post about Redmine I mentioned that I was having problems with LDAP and 2003 Active Directory authentication. Now I considered myself to have a fair amount of LDAP and Active Directory experience. I have set up samba PD and set up PAM to auth against LDAP. Even to grab user credentials. I’ve written scripts to pull users from ldap for initial setups in other applications, etc, etc. But for the life of me I couldn’t get redmine to auth against AD.

I probalby spent about 5 hours debugging Redmien to find the error. I had logger.info lines all over the place (I’m a ruby newbie), I’m debugging the mysql queries, if statements, everything I can think of. After 1) understanding Redmine and 2) understanding ruby, I was able to start norrowing it down. The SQL queries were fine, the initial ldap bind was fine, but it was authenticating.

I ended up finding out that the problem was with the ldap_conn.search() fucntion. I wasn’t executing correcting. They seemed to using it as kind of an if statement, so I was trying to ouput the status, but wasn’t getting anything. I thought this was my lack of knowledge of ruby. I forced the ldap_bind to fail, so I know for a fact the ldap_conn.search would fail, and it did, but this time it would return false. But when everything else seemed to work find, ldap_conn.search would return nothing. I was stumped. I had no clue what to do. I went home that day feeling defeated. I talked to Brian and he made fun of me, like any good friend should, and told me it was user error. I laughed him off and went on my. Next day at work though ended up proving him right. I ended gettign the bright idea to cdump out all the variables being used. I read that when the ldap search function was giving a filter string that was the written out the way it wants, it silently fails. I looked through them all, and they all looked okay, fiddling with them for a bit didn’t do anything. Then I dumped them again , and it hit me, like a pallet of falling bricks .. yes it hurt as bad also.

My username field for the ldap search as set to sAMAccountName , what you can’t tell from this is that it was actually ’sAMAccountName ‘, with a space at the end. So the filter ws being set to sAMAccountName =ryan.gibbons. While you would think this might work, it doesn’t, but whats worse is that redmine let this pass, and ruby-net-ldap didn’t doesn’t handle invalid filters at all. Hence my post below about Data Cleansing.

So hopefully this post will help others out there having similar issues. I’ve learned my lesson for the week, only question is how long will I remember it. Tomorrow I will go submit a bug to hopefully have this error fixed. Yes even computer nerds and programs fall victim to PEBKAC.

09 September 2008 ~ 2 Comments

Data Cleansing

Should be enough said, but apperently it isn’t. Yes, I had a dumb user moment, and had a space at the end of one of my inputs. Which the application saved, and passed on to another “plugin” and failed to make the connection, silently btw. The space should of been cleansed out in multiple places, especially a trailing space.

I am pretty sure I learned this in my first year of school, programming 101.

Reminds of a comic .. from xkcd

Exlpoits of a Mom

09 September 2008 ~ 8 Comments

Redmine – lean and powerful project management

I’ve started to use Redmine a bit in my personal business to help manage the few projects that go through my doors. A buddy, Brian Wigginton, turned me on to it. We have spent several nights looking for a good app that can manage, tasks, issue and project workflow from beginning to completion. After trying out several different ones ( i.e. OPProject, Trac, Achievo, and even dokuwiki ) based on multiple technologies ( i.e. java, python, php, and ruby). We ended up with Redmine, which is based on Ruby on Rails. The install wasn’t too bad (we spent most of the time working with phusion passenger, which being a fan boy of mod_fcgid, I highly recommend.) The database design seems pretty straight forward and it has all the features we were looking for.

OnePoint Project (OPProject) was an amazing it. It was java based and we deployed it over a tomcat-6 server. For a strict project management app, I think this one wins hands down. The interface is clean and sharp. Even know little about Project Management, I was able to find my way around the system and get some basic things set up. It manages resources and time. And again, the Gantt charts were very easy on the eyes.

Trac is more of a software management portal. It is based on python, and I deployed it in the past using mod_python (before I knew about mod_fcgid). It is a very strong app for managing software development. It has a strong integration between the repository, bug tickets, and a wiki. It was missing a few of the project managemenent aspects we were looking for, but it works great for basic management of software development.

Achievo describes itself as a flexible web-based resource management tool for business environments. And I would have to agree with that. It doesn’t tie into a software repository like Trac does, but it does provide more project management tools such as gantt charts. One piece I did like, was it’s ability to add clients, and manage projects and task for assigned to those clients. If we were looking for a general business or department management tool, this peice of software would of probably won out.

DokuWiki is just a wiki, with the ability to add plugins. We started using it in the interum as we were trying to find a software package for us to use. You could use this as a basic project management for a group of people, especially a decentralized group. Collabrating on pages for ideas, managing picture, and providing revisions is essentional. There wasn’t any strong project management tools, but getting going, it was extremely usefull. I love the fact that it doesn’t use a database for it’s wiki pages and revisions, but instead plain text. This has always been my love of dokuwiki, and will always make it my first choice for small to medium sized wiki’s.

Redmine is really a plethora of applications rolled into one. It provides Repository integeration, bug ticketing, wiki, forums, customer management (via plugin), and project management tools. We are able to track our time for each project, and with a plugin, see a resources time across all projects. We have a wiki, document section, and file upload for each project. Wiki pages can cross link to other projects, and any one section can refernce another. I.E. a wiki page can reference both a ticket number and a repo revision. We are also able to provide some basic project planning through gantt charts as some of our customers request. Security is strong, and development still seems very active.

We’ve been happy with our initial testing of Redmine, and look forward to really running it thorugh it paces on our next project. I’ve also started installing Redmine at my office as management is now starting to ask for project schedules on some of my long term projects .. woohoo :/. With our personal install, we were able to get LDAP Authentication working with our Zimbra server. At my office, I am trying to get it working with Active Directory. It seems to be working, but is failing on the search. Debugging Ruby is something I am new at .. which is a topic for another post another day!

EDIT::Fixed spelling.

04 September 2008 ~ 0 Comments

New Theme

I grabbed a new theme for my blog today. The original theme was Vector Lover over at style styleshout I’ve got most of it implement. I don’t have the active link highlight working, as well as a few css bugs, especially when logged in. Over all though I think it is going to stick.

04 September 2008 ~ 4 Comments

Windows and Active Directory Management from Linux

Browsing the web today, I found two nice tools for managing AD in Linux. First up is adtool. The home page is at http://gp2x.org/adtool/. This is a tool that lets you manage the objects in active directory without having to know too much knowledge of LDAP. You will have to know a bit about the layout in Active Directory, but you don’t have to worry about having to write your LDAP queries. This small little app lets you list out directories, modify attributes, reset passwords and more.

Next up is a package released by the ZenOSS group, they use it with their monitoring suite, and it is a WMI client. Again CLI only, but works great. I found it over at http://felimwhiteley.wordpress.com/2008/08/15/wmi-calls-from-linux/ and the package can be downloaded from http://dev.zenoss.org/svn/trunk/inst/externallibs/. It seems to be a python script with very little documentation. Based on the blog post, the syntax isn’t much different then that of the wmi client for windows.

Between these two tools, you could decently manage basic task from linux, and even write some nice scripts to do more. While these two tools won’t Network and System Administrators of Windows Domains out of a window enviroment all day, it will help those who still prefer Linux as the day-to-day machine.

26 August 2008 ~ 0 Comments

r500 3D returns

Well, the issue with the 3D seemed to be that that the xorg-server-1.4.906 release wasn’t quite good enough any more, and that I needed xorg-server from git. This of course means dependencies on other git libraries as well as re-compile all the x11-drivers … woohoo for me. But the plus side to all of this is I got my Compiz back. I really like the Scale and Expose fucntions.

25 August 2008 ~ 0 Comments

ATI r500 Open Source 3d

I had a strange issue last night. After updating a few X11 packages from git, I rebooted and everything seemed to work fine. I then shutdown and went over to a buddies, booted up only to see X was locking up my session. I would get a blank screen, and then the system would become unresponsive. I tried re-emerging a few of the applications but the problem still existed.

I instead removed all the keywording for the r500 drivers and the X11 beta applications, and then added back in just the things needed for xorg-x11-7.3. I downgraded everything else, and then my X came back. I then re-added the unmasking and kewording for the r500 drivers, updated everything is now my enviroment comes up. Crazy .. except one small issue. My AIGLX isn’t working. 3D seems to work, but I am getting strange errors.

First of glxinfo reports Direct Rendering: Yes. But when I run glxgears, I get an RGB error about double buffering. This seems to prevent any type of compositing manager from running. I tried running Frozen Bubbles, and it works fine. All my 2d acceleration is now working fine, just compositing/3d seems to be borked.

I guess this is the pain fun of working with live git packages http://gibbonsr.net/rsc/smilies/icon_smile.gif” alt=”:)” class=”middle” />

24 August 2008 ~ 2 Comments

SHMConfig enabled synaptics through HAL

Finally I got my synaptics drivers to work properly. With the new HAL, you are able to have it hotplug your input devices into X, this means they don’t need to be listed in X. I tested this out on my laptop a few months ago, and it worked. Only problem is I couldn’t pass along the variables for my synaptics touchpad. Well, after months of waiting and research, I finally got it figured out.

I created the file /etc/hal/fdi/policy/11-synaptic-options.fdi, which, in Gentoo, are the user added hal policies, system installed are in /usr/share/hal/fdi/policy/. I then added the following into that file


<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="input.x11_driver" contains="synaptics">
<merge key="input.x11_options.SHMConfig" type="string">On</merge>
</match>
</device>
</deviceinfo>

This turns on SHMConfig which allows synclient and gsynaptics to change synaptic settings on the fly. Sadly, in between noticing this taking effect I had moved to a few pre-release applications to get the 3d r500 accelleration with ati drivers. Below are a few application and versions I am running


[ebuild R ] sys-apps/hal-0.5.11-r1
[ebuild R ] x11-base/xorg-server-1.4.99.906
[ebuild R ] x11-drivers/synaptics-0.14.6-r4

Also note, i just notice xf86-input-synaptic-0.15* has been added to the portage tree for the 1.5 prerelease, need to check this out.