Showing posts with label working life. Show all posts
Showing posts with label working life. Show all posts

Wednesday, July 31, 2013

Polyglotism

Lately, I've been educating myself on the topic of what is commonly called NoSQL, and this nice presentation by Martin Fowler made me think about stuff I've already written about earlier. The same thing can also be found on a talk on data storage technologies employed in Craigslist.



The key phrase was polyglot persistence (@~51 mins in the video). Not that I wouldn't probably have heard it already earlier, but now the ultimate meaning finally dawned on me. It means, that to build a system - one that is highly performant, at least - you probably need to be able to take advantage of the different DBMSs that are around. The same way that multi-lingual developers push the idea that you need to use the language that is right for the job. So the diagram Fowler gave on polyglot persistence could be extended with programming languages with which the different parts of the system have been built with, and probably also with OSs the parts run on, and so on. There is a reason for dozens of DB brands and programming languages and whatnot existing, and it is the attempt to produce proper tools for specific problems. I can see this could also lead to a sprawl of diversifying computational environments, but I guess the constant popularity contest that goes on between products makes either the products converge or the niche options quietly fade away with the more popular ones gaining market share.

All this polyglotism further widens the options for a fresh wannabe ICT specialist. There certainly is a need for narrow deep expertise (to be able to know something like the Spring framework from top to bottom one really needs to spend considerable time with that alone), but I do not see that it would become very common for companies that are not actually huge in size and less than 100% technology oriented to hire bunch of specialists of different areas. Or they could, but then again they could hire them just as well as consultants since they are not likely to need each one of them equal amount of time constantly, and if the team members do not know much about each others areas of expertise they really can't be assigned to work on the same task together. My experience from the service sector is that there is a huge need for a team of people small enough that it can constantly be kept busy with the ongoing tasks and that you can throw at any kind of a problem and they can handle that based on their collective wide experience.

What I am after here is that even though I've been mostly using Oracle (from version 8 onward, I think) as the data back-end in my professional life,  the potential of interesting non-RDBMS encounters is highly rising. All along the road I've been running into cases where it is not feasible to stick to the good ol' 3NF of data and instead denormalising to get performance - something that the NoSQL folks are very fond of. This far it has been a convention that if an application needs a DB (bigger than can be reasonably embedded within the product on the same server), it supports one or more of the big traditional RDBMSs. Now I already see RHQ including Apache Cassandra in the package, and even though Cassandra comes bundled with the product, one basically needs to install it on a server of its own for practical use - so basically it can be said RHQ requires Cassandra in addition to one of the supported RDBMSs. Personally, this made me think of how I can sell the idea of requiring another server for application server monitoring to my superiors...
submit to reddit Delicious

Sunday, July 14, 2013

Hazards of sitting

Having been reading monthly occupational safety reports at work has increased my consciousness on safety related to work in general (very good for preventing some stupid home injuries) and electricity related risks (also very good thing to know if you are the kind of guy who doesn't fear to make some minor changes to home electricity, like installing a ceiling lamp that doesn't have the fancy and safe kind of a plug for connecting it). Other than that, I guess, for a guy who sits at the desk all day long the most likely accident at work is slipping on the office floor. And oh yes, I have once dropped a thick folder full of papers on my big toe, which resulted in a small bruise. Probably not reason enough to request for safety shoes with anti-slip soles and toe protection, though.

Those reports and subjective experience has also increased consciousness on the fact that long term sitting in front of a computer is a hazard to one's health. Not an acute one, though, and perhaps it is not that high profile on corporate health and safety agenda - except (hopefully) in software houses. Generally computer work is taken as such that it can be done in a condition where manual labour is not anymore possible (the most important muscle in a specialist is the brain, anyway). However, there is potential for many kinds of pain which might even be debilitating and thus affect productivity, so to me it looks a very real threat for working health.

I remember times when stiffness and tension caused by crouching over the keyboard was easily taken care of by some physical workout, stretching and a walk outdoors. By that time I didn't do yoga asanas, but I'm sure those would have worked, too.

I miss those times. Nowadays I'm happy if there is no notable tension and the stiffness is not painful. I've increased my awareness on the condition of my body as well as my posture, and I try to have short breaks during the day for doing some exercise and stretching at my desk. I do asana practice at least a couple of times a week, and have tried several kinds of treatments and therapies (different kinds of massage, acupuncture, reflexology...) and go to work by bike or foot. I ran into a good article on the subject and the theory given there on the reasons for the continued stiffness and discomfort seem very logical to me: the stiffness kind of works its way into the different tissues and thus in the end it's not just the muscles that behave badly.

So far I haven't used any occupational health care services since the situation is not outright bad, but I'm concerned of the directions of things for the sake of myself. I'm also pretty confident that the condition is indeed profession related (type of profession and condition do match).

The thing I'm happy about is that there is one common computer job related injury that I've managed to prevent so far - the carpal tunnel syndrome. I've been paying a lot of attention to hand ergonomy since pretty young which must have helped a lot. Maybe if I had been just as aware of the possible results of bad posture, too, things might be now different...

The reason I'm writing this is that during all these years I haven't met too many colleagues who would have indicated that they are really aware of these things. It's pretty common for office workers to go a gym regularly, and that is most likely a very good thing to do. Many might also have other hobbies that are good for the upper back area (I've heard that for example golf is great physical exercise in this sense). However, I fear that I'm not at all alone with this issue and it's worth the effort to bring up the subject.

Thanks for reading and now go do some stretching and make your body happy!
submit to reddit Delicious

Sunday, April 14, 2013

All work makes Jack a dull boy?

Sometimes I've been pretty frustrated over the fact that I need to worry about my employer's business also outside the office hours. That's an unavoidable side-effect of administering a production system, I guess, and it does not diminish at all by lack of quality within the administered system. I mean, I do like my job, but I also do like the rest of the stuff I like to do when I'm off-duty, and most of all I do like to sleep at nights. Unfortunately the system has its best time window for service from 10 pm to 4 am, which completely overlaps my best time window for sleeping. And I do have trouble getting sleep after late night work.

Whining aside - since that is the point in this post, at least so far - I ended up seeing a documentary about the poor people of India called Nero's Guests (this was actually already last summer, but never mind, and I think everyone should educate themselves with that kind of documentaries but that, too, is not the point here). One of the people portrayed there was a single mom of I think 3 young kids who worked a long way from home. She woke up around 4 am, washed up, cooked breakfast for the family and went to the train station at 6 am. After the day of low-paying hard work she returned home on the train after sunset around 23 pm (her kids obviously had had to take care of their own dinner since they were already asleep by the time their mom got home) and went to bed. I don't remember the details anymore, but I'd guess that went on seven days a week (or maybe she was lucky and was able to have one day off from work per week). Compared to that, the discomfort of having to work 37.5 hours a week with occasional hours hitting outside of the oh-so-convenient 9 am to 5 pm window is minuscule.

That is not by far the only example. Like the farmers of yesterday, the poor of the world today do not have a separation of work time and free time. And I think farmers still have the same schedule that nature dictates (work when needed, rest when you can). Not exactly the most prominent role models of today, but what is it that they seem to actually cope better with their circumstances than me with my own?

Actually the habit of having to be at the office from 9 am to 5 pm was inherited from the days of industrialisation in the 19th century, and has not much to do with the current ICT work that is not tied to place or time. In a factory it was - and to some extent still - is crucial to have the people at the conveyor belt (or the monitoring console in a more modern factory) all the time, otherwise the production will likely suffer. Since that is not the case with modern information work, we have things like flextime (ok, that's rather old thing already), remote work and flex work. Basically the information workers of now can put in their effort at the time they feel most comfortable and sometimes even in the amount they feel comfortable with at that particular time. Working in cafés, park benches, sofas etc is kind of trendy these days, and even the less-trendy companies start allowing that kind of work.

I've been doing flexitime all my career, and I appreciate the freedom it offers. I also appreciate that my current employer does allow occasional remote work days when I need it (although I do have better ergonomy at the office, so working a full day at home is rather heavy physically). This clearly shows that I have absolutely nothing to whine about in my working circumstances - so far I even got the luxury of a private room at the office (remains to be seen how long) - something not so trendy but yet so beneficial for concentration.

I've been working with my mindset some time now to mend this mental issue of mine. As I'm interested in yoga I like to view it also from the karma yoga angle - some things just need to be done due to that being my duty (applies also to the multitude of things not so pleasant yet mandatory in life in general). If I was as enthusiastic about my work as some are, things would be easier. I wonder whether it is about having a "perfect" job for oneself or whether it is about the mindset, or both. Nevertheless, not all can have a "perfect" job. In fact, "perfect" is something that likely does not belong to the domain of material life, so it must be about the mindset. It is rather ironic that if one sees things in a positive way, everything is so much easier.

After all, I'm being pretty darn lucky.
submit to reddit Delicious