30 July 2012

digging

I did a little bit on Doppelganger last week, namely setting up Warg which is running Windows Server 2008 R2. But most of my tinkering has been at work with a form and on Balrog playing more Minecraft.

/TECH
But let's talk about my tinkering at work first. I need to begin by describing a form that I'm working on migrating from SharePoint 2007 to SharePoint 2010. The form in question deals with allocating a funds to an employee for cell phones. As such, the form needs to be able to do several things right off: recognize the employee filling out the form (that's easy); query a list of current allocations and find all that pertain to said employee (hmm... okay); and check to see if the employee has submitted any forms for allocations during the current fiscal year (right).

The first part requires using the userName() function and then querying the user profile service to get their name and ID number. No problem.

The next part requires finding all the current allocations for the employee queried. All current allocations sit in a custom list which is easy enough to get to with a data connection, but how does one get just that employee's entries? Well with SharePoint and InfoPath 2010 it is now much easier to query list data connections that you receive data from. So by creating some rules that trigger on Form Load I set a field in the connection to equal the employee and then tell the form to query the connection. Boom! List of lots of allocations is now just 0 to 2 entries. This short list gives me information about each allocation along with how many allocations an employee already has. The form then presents pertinent information to set up a new allocation, update a current one, or renew an expiring one.

The last trick actually requires receiving data from the very library submitted to. This action allows us to see what other forms the employee has already submitted. But we only want to see ones submitted in the same fiscal year. Like the current allocations query, we query the forms library using the employee and also add in the fiscal year we want.

It's interesting to note that when I first modified and expanded this form that the data connection would return ALL information in the list or library and we used filters via rules and default values to get the information desired. When I looked at it this time, it just didn't make much sense to do it that way. It also helped that every one of those default values exploded in the conversion from 2007 to 2010.

Overall, I have to admit that I like SharePoint 2010 much better than SharePoint 2007. There are a few things we've had to adjust, some more annoying than others. For instance in InfoPath 2007 you could set a rule to check a condition and then do nothing except prevent any further rules from running. InfoPath 2010 doesn't allow this, but rather then just marking the rule as invalid it completely removes it without a trace. This is but a small pain though in comparison to the benefits that 2010 offers, like having a data connection sort the data returned by the field you specify. Drop-downs are now alphabetized even if the ID numbers of the queried data are out of order. The fact that data connections also have a separate set of "fields" for querying is also incredibly useful and is what inspired my recent redesign of the form mentioned above.

/EXISTENCE
As I mentioned in my intro, I haven't done much on Doppelganger recently except get one VM setup. It has really been running smoothly and I hardly have needed to mess with it since getting things set up. I guess I did move my TeamSpeak server to a new container called Raven where I now also run a Mumble (Murmur) server. But it wasn't hard and I didn't really learn much.

What I have noticed however, is that I get home from work in varying degrees of worn out--mildly to exhausted--and frequently just want to relax and not think about much. Enter Minecraft. Though it can be a very deep game with basic computer architecture simulation ability using redstone, it can also be one of the most mindless experiences out there.

It's such a strange game in that regard. it just places you near the center of 60 million square meters of blocks with a max build height of 256 meters and says, "Do something." At first you just stand there going, "WTF?" Then you move around and try punching something. You collect some dirt. If there are animals around, you might punch them a bit. Then you punch a tree and get wood. Eventually you're building a replica of Neuschwanstein castle before you come out of your stupor realizing you just spent 3 days of your life playing a game. All at once. Even forgetting to eat or sleep. (I'm exaggerating, but only a little.)

Only just today have I come up for air and realized that I need to get off my butt and get some exercise. At an embarrassing but not ungodly weight I realized that work is not going to get me moving around, rather it will keep me firmly planted in front of a computer so that I can earn strange pieces of paper-fabric which I can trade for silly and entertaining things like Minecraft, which is just more sitting in front of a computer. So today I actually went for a walk after work and managed to make it nearly a mile in 18 min. I don't know how many calories I burned, but I have a new sense of accomplishment and have set a goal down to get to 190 lbs again.

Until next time:
Work hard. Play harder.

18 July 2012

expansion

/PERSONAL
I'm a little late posting this entry, but I've actually been quite busy recently and when Monday evening came around all I wanted to do was relax. Even now, two days later I'm tired and kinda want to go back to bed. But today is a special day and I decided that I needed to get stuff done, this being one of those things on my list. Now on to the tech talk that I normally spout.

/TECH
After some deliberation about where my best hardware should be I finally decided to put my better hardware in Doppelganger. So as part of my Independence Day festivities I took down Doppelganger and Phoenix and swapped their hardware. I made backups of Pegasus (my current TeamSpeak server) and Balrog storing them on my external HDD. At first I thought I'd just swap the HDDs between the cases, but then I remembered a critical detail: my video card, the only part not going in Doppelganger, doesn't fit in one of my cases. Motherboard switch it was! Later I realized another small detail that the Sabertooth 990FX motherboard doesn't have on-board video. Low-powered NVidia video card to the rescue once again! I always knew it was good to keep that.

Now Doppelganger has a beautiful rich-featured motherboard, a quad-core AMD FX processor, and 16 glorious GB of DDR3 RAM. I'm especially happy about the RAM. Eventually I'll get another server named Raven setup where it will automatically boot with Doppelganger and launch TeamSpeak Server, Ventrilo Server, and Murmur Server giving me and my friends a full range of voice-over-IP choices. Balrog is happily running along with several scripts I wrote to help me manage it more easily including a pretty sweet update script that downloads the given update, replaces the server jar, updates the message of the day in the server settings, and automatically restarts the server. But between the two VMs I'm hardly utilizing Doppelganger. There must be more. More! MOAR I SEZ! …ahem… Sorry, I devolved for a second there.

After a recent gaming session in EYE: Divine Cybermancy with friends, I decided I needed to setup another dedicated server for the game. It's pretty awesome and it's a Source engine game. Since Source engine games can be run using the same dedicated server application I realized that I could get it running using a Linux server. Since the Source engine is made by Valve and published to the Steam platform, I decided that my Source engine dedicated server would be named Golem. Sadly, I have not spent the time getting it running yet and really need to experiment with the Source dedicated server before I jump into running it on Linux.

My real next task is to setup two VMs for experimentation. One will be a Linux playground and the other a Windows playground. With so many distros of Linux, I'm not sure which flavor I'll use, but I'm thinking just a standard one, like Debian. Windows I have fewer choices, but it tends to be more of a hog and so I'm not sure which version I'll install. Anyway, once those are installed I'll make snapshot backups of each and then I can experiment on the system and mess it up as much as I like. And if I can't fix them, I can just restore from the snapshots.

Besides the Source dedicated server, I've thought about playing with include a private Internet radio server, DNS server, file server, web server, and a SQL server. I'm also hoping that I can buy some large capacity HDDs within the next year to put into Doppelganger and expand the storage to ridiculous sizes. If you have any ideas of what I should experiment with let me know in the comments and I'll see what I can manage.

Until next time:
Work hard. Play harder.

02 July 2012

doppelganger

/TECH
Doppelganger lives. It is quite gratifying actually, to finally have a server that I can run a combination of production systems as well as test systems on. Proxmox is a sweet system. The Linux based hosting environment is quite powerful and comes with my favorite price tag of free. Currently Doppelganger is running two other systems constantly: Pegasus and Balrog.

Pegasus is my current system for hosting TeamSpeak, but I'm trying to get it moved to another system called Raven. The reasoning behind this is that Pegasus is currently setup as a VM whereas Raven is setup as a container. The difference between the two is that a container is more isolated thus increasing security plus they are way easier to manage. Eventually I'll figure out my hang ups on Raven as I'm also trying to set it up to auto start TeamSpeak. I also hope to install both Murmur (Mumble server) and Ventrilo server applications on Raven so that I can have a more complete voice conferencing solution.

I thought Balrog was an appropriate Minecraft server name. Yes, I play Minecraft and I've dedicated a ridiculous amount of effort to maintaining the dedicated server for it. One of the things I've distinctly learned about Minecraft is that it likes RAM. It likes a lot of RAM. I've caught it using 1.5GB of RAM on my computer several times. It also likes a decent CPU speed, fast upload speed, and fast download speed. As it stands, I can only have about 5 people logged into my server simultaneously. But it's loads of fun and often worth the effort.

My first week with Doppelganger has been good, but I've discovered that the hardware I'm running it on is a bit… lacking. As a result I've been looking for ways to upgrade it without spending additional money. Solution: swap my hardware from Phoenix, my personal computer, to Doppelganger. This would then net me a much more powerful machine for the server but set Phoenix back a little. All in all, I think it will be worth the effort to swap the hardware to result in a more stable virtual environment.

It's good timing to do this transition right now too. Phoenix is having issues lately and Windows needs to be re-installed. Yeah, when your computer can't find Google.com, you know there's a problem with either your service, your router, or your computer, and since all other devices were connecting to the Internet just fine, it's the computer. So Phoenix will once again die and be reborn. Phoenix will take a step back in performance, but ultimately it will be better. Once I settle on hardware, I'll post the specifications.

Until next time:
Work hard. Play harder.