My Office

Mar. 20th, 2009 05:48 pm
armtuk: Cheetah (Default)
I work here in a converted barn type building in Chester Springs. It's nice, but we're moving soon alas into the thronging King of Prussia. I thought that before we departed I would take some pictures of the nice place where I've been working for over a year now. It's not often that I work at a place longer than a year, so I guess I must like it! :)

Training

Mar. 27th, 2008 09:35 am
armtuk: Cheetah (Default)
Yesterday was the first day of training, and it was really good. The trainer is very knowledgeable and is a good teacher. She is explaining concepts well and giving us a very detailed look into the system. I think that I will be able to answer most if not all of the questions that I have been sent here to answer. It is clear that the folks at Mark Logic have thought a great deal about their product, and it has a very rich feature set. Some of our concerns about collation and diacritics have been allayed as it appears we can set the level of sensitivity to such things in the configuration of the server. Mark Logic has built a huge set of extensions to the standard XQuery function base allowing you to write entire applications just in XQuery which is a great feature set. There are also a significant number of APIs to the server in things like XDBC for Java and .Net, WebDAV and standard HTTP. I got a crash course in XQuery yesterday and found out some very interesting things about certain operators in XQuery. XQuery sequence operators by default return a match if any member of operand a matches any member of operand b, so (1,2,3) = (3,4) returns true, which is interesting. If you want to get a true equivalence, then you must use the function deep-equals. And if you want node equivalence then there is another function that can do that. XQuery is a purely functional language, so everything pretty much has to be a function with the exception of FLWOR statements. My initial assessment that XQuery was really just XPath plus FLWOR was a bit short of the mark however, as it appears you can define functions in XQuery allowing you to build complex systems. So it's basicaly XPath + XQuery functions + FLWOR + custom functions, so I wasn't far off, but that extra bit counts for a significant chunk of functionality. It's going to be interesting to see how the Mark Logic folks on our project do their PoC.
armtuk: Cheetah (Default)
I'm here in San Francisco for some training. Doing some work for a company who needs me to understand Mark Logic, which is an XML database. The hotel room is nice enough, but the high speed internet is not so high speed getting a pathetic 30kB/sec download speed for my AspectJ install which apparently I forgot to install before leaving. I'm doing a bit of work on my own Consultant Helper aplication which is based all on libraries that I wrote, JSAM the Java Simple Authentication module, PDF-Jam which is a PDF library that is still under development, but does work at reading and writing PDFs so far with just text, and Hermes which is a database abstraction layer that was originaly designed for back-end usage, but I have updated to be able to be used in a more web-centric environment. So far I can create clients, services and employees, and I enter details of work done. I am in the process of being able to create invoices and then generate a PDF to send to the client for billing. This is all open source, and I'm hoping to run the whole thing as an online application that I can offer to the general public. It's pretty low load, and anyone who does anything more sophisticated is probably already subscribed to Quick Books, maybe one day my functionality will rival theirs, they certainly seem to be moving at a snails pace right now, but there is a great deal of ground to catch up. For now I just need to be able to send companies a status report, and a invoice and a statement, so thats what I'm focused on.

Whilst I'm in SF, I hope to at least see the Golden Gate Bridge, and to sample the local sushi which I've heard is divine. I'm only here for a few days, and I don't have much free time, so I probably won't get to do too much sight-seeing, but it's always exciting to be some place new.
armtuk: Cheetah (Default)
So stracing postgres shows that my function deg2rad was segfaulting. Wow - apparently some query is calling deg2rad and passing in a null value. The function doesn't like that, so I've put in a test to make sure if it gets a null, it returns a null. So far it's looking promising. I could now submit the admin page that I was using before to test the problem, so my reproducable case has gone away. The other application that was doing it lots was trac. I'm not sure how trac's crashes can be attributed to my stored procedure in an unrelated database, but a bit of clicking around in trac has shown no problems yet. Tomorrow will be the big test. It seems to happen during the day when the server is under load much more prevalently.
armtuk: Cheetah (Default)
We are having a major malfunction with our database server that started about three days ago. For some reason database connections are closing unexpectedly or at least reaching EOF when they shouldn't be.

I did all the normal stuff. Downgraded Postgresql from 8.3 back to 8.2 wondering if that was it. That didn't fix the problem. I rebooted the server, that didn't help. Restarted everything like ten times. I posted to the PgSQL mailing list, and I posted a ticket with Rackspace. The PgSQL mailing was as always fairly helpful, but Rackspace was worthless. If there was anybody else who even answered customer support requests on a reliable basis and gave bigger servers, I would totally ditch Rackspace, but they are the best of everyone we've worked with which is sad. Not much of a recipient of fanatical support so far (ServerBeach has been excellent, but they don't really provide the kind of server we need).

After few responses that were helpful in fixing the problem I decided that the best next step was to strace tomcat to figure out what was happening on the socket. The first strace the socket threw a SIGPIPE and tomcat's thread Segfaulted :( (but didn't throw a Java exception so it looked like nothing happened from the log file). Unfortunately I wasn't expecting tomcat to crash (we've seen the DB process segfault before, but not tomcat) so I wasn't running with a non zero core dump limit.

The next runs revealed little of anything. Then I got one that had more clear information in it. It looks like tomcat is sending a database request to postgres and the recv comes back with a 0 return value, which means postgresql is closing the connection. Super wierd.

I've posted this info to the Postgres mailing list. Not sure what else I can do at this point. Maybe my postgresql.conf is stupid, but I haven't changed it recently I don't think, so I don't know why this started happening all of a sudden.

I think my next step will be to strace postgresql, but that means setting up a new instance because I can't really strace the production instance of postgresql as that would generate so much log, it would be impossible to go through it all.
armtuk: Cheetah (Default)
So - I'm working on getting a demo application ready for a client. It's a java application, so I figure the easiest way to work would be on a linux desktop, then jar it up and scp to my windows box for testing.

I have installed Ubuntu 7.10 on my spare machine here. Well. Where to begin. This system is definitely not for java developers. It ships with the stupid gij/gcj system which doesn't actually work apparently when running a simple Java 1.2 application that opens a window with one menu 'File' with one item 'Open'. Stunning. Stupidity 1, Linux 0.

First I try and get it connected to the network, but by default it comes in 'roaming mode' which means it doesn't find a network connection. How stupid is that? Stupidity 2, Linux 0. I have to manually change it to DHCP, which then doesn't work immediately, I have to start dhclient manually (I only know about this because we were messing with it on Marn's laptop the other day). Stupidity 3, Linux 0.

Then I try and get VNC working so that I can VNC in from my windows box and use the linux box 'remotely'. This is important as the tools I use for image maniuplation aren't on linux, namely photoshop and illustrator (You can talk about GIMP all you want, but it won't open a PDF and let me extract images from it). Well - I installed the vncserver package, and basically it doesn't work. After trolling the web a bit, I get some suggestions, but they don't work either. Stupidity 4, Linux 0. I go on IRC, the infamous support network for linux, both on #ubuntu, and on #gnome-hackers as I was hoping to use this setup for working on Metacity. No help there. Stupidity 5, Linux 0.

Then after working in firefox a bit, firefox crashes. Not only that, but it apparently takes X with it as no application will now start, with a connection refused message. Stupidity 6, Linux 0.

Ok - so I download the JDK for linux from Sun and ant from Apache, get them installed, and my JAVA_HOME set correctly, and I manage to compile and run my simple test application, hooray. Stupidity 7, Linux 1.

Ok - now I need to get my images off the windows box. Let me think how to do that - oh yes, SCP. Well - this is Ubuntu Desktop, so sshd is at least not running. which is reasonable. After trolling through the menu for some kind of services application, trying a couple of things - I find nothing. Wow - even the Mac has this shit guys, for pete's sake, do some basic research, OS X has been out for years. Stupidity 8, Linux 1. Ok - well maybe something that can tell me if it's installed, some kind of package manager, well there is something labeled synaptic package manager. Not really clear what this does from the name if you don't know that Ubuntu (and most other distros) is organized into packages. Well give one for each side on this: Stupidity 9, Linux 2.
Hooray - my search finds openssh-server, and I get it installed, and it starts! Woot! Stupidity 9, Linux 3.

So after nearly two days of wrangling, I am actualy starting to get some work done. Not what I had really pictured as my ideal outcome.

Oh - and the compiz window manager. Well - the effects on the Mac and Windows Vista are somehow pretty and unobtrusive. Not so with compiz. Too much bling going on, it's very distracting. Now I just have to figure out how to switch back to metacity. Plus I work on metacity a bit, so I have to use metacity out of principal and hate compiz :).

Is linux any better on the desktop than the last time I used it seriously 4 years ago? Nope. Still has major holes even if you just want to connect to a network for pete's sake and browse the web. And let's not even get started about how UGLY firefox rendering is in linux. It's not a patch on IE 7. At least I hear they are working on a new rendering engine in FF 3.

Update: I downloaded the Firefox 3 beta, and after some wrangling got it working. Could they make it more difficult to test it? The rendering engine was crap like in Firefox 2. IE 1, Firefox 0.
armtuk: Cheetah (Default)
Well - we watched the whole second season of numbers on thursday, which was fun, but sort of a procrastination for work related things. We then ordered from burger king, and ended up with some parasite in our food. Sarah didn't feel well after eating much either. I have this one piece of work to finish, and it's totally bugging me becuase it's a really tricky statistical thing. My boss just called yestarday evening to ask what the status is. I really have to get it finished for Monday and fully tested, which is going to be a tall order.

We are going to see Shrek III tonight with my daughter. That should be fun, but it's kinda late for all. We haven't eaten hardly in like two days after the burger king incident. All we do is eat out.

Paralysed

Dec. 7th, 2005 01:29 pm
armtuk: Cheetah (Default)
I am getting the anxiety bad. Working from home is working out to be very hard for me. I have spent three days totally paralysed by fear. Fortunately I don't have that many more hours to bill before the end of the month, but I do have other stuff I need to be working on instead of freaking out. I was flicking through my Bible this morning at bible study, and I came across a verse I have marked before:

Matthew 6:25-27

(25)"Therefore I tell you, do not worry about your life, what you will eat or drink; or about your body, what you will wear. Is not life more important than food, and the body more important than clothes? (26)Look at the birds of the air; they do not sow or reap or store away in barns, and yet your heavenly Father feeds them. Are you not much more valuable than they? (27)Who of you by worrying can add a single hour to his life?

Who of you by worrying can add a single hour to his life?

Repeat after me:

Who of you by worrying can add a single hour to his life?

I need to hear that so much. Over and over again. I just gotta get on with it and quit worrying.

I had another dream last night. I was playing my violin in a music competition. When I woke up it triggered such deep feelings of regret and loss at what I haven't done with my ability on the violin. God only knows how much I want to be a musician, I love music so deeply, but it seems I'm just not cut out for it in this life.
I have to let the past go unless it's going to be part of my future, and I have to make it that way if I really want it that way.

Profile

armtuk: Cheetah (Default)
armtuk

April 2017

S M T W T F S
      1
2345678
9101112131415
16171819 202122
23242526272829
30      

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 23rd, 2017 09:20 am
Powered by Dreamwidth Studios