The Service Layer: How I understand it

July 13th, 2012 by rvdavid 4 comments »

There are several articles and posts out there regarding what a Service Layer is. I’m going to throw my two cents in as to what my interpretation of the Service Layer is.

Whenever I am in conversations with other devs or giving presentations about the Service Layer, I convey the following points:

A Service Class is primarily “just another object”.

When I had first started reading up on this my mind was flooded with several definitions which are all true and “click” after you understand what the Service Layer actually does. Start off thinking of a Service Classes as a normal Class in your library.

A Service Layer is a collection of Service Classes.

A Service Layer consists of serveral Service Classes which can call upon one another. I’ll be discussing the strategies I use in a little more detail later in the series.

At this stage, we’ll start with the notion that a Service Object can call other service object to use it’s methods. Additoinally, it can provide access to other Service Object methods via proxy.

» Read more: The Service Layer: How I understand it

The Service Layer Series

July 11th, 2012 by rvdavid 1 comment »

It’s been a while since I’ve posted, but this is not going to be about this topic today. This blog has been the one constant in my development career from when I could sink my teeth in enough into it to be good enough according to my intrinsic metrics to have an opinion (and think it matters) and I intend to keep it going.

As with any autodidactic programmer, I may mix up some concepts. To be quite honest, the more and more I use the Service Layer, the more it looks like an actual extension of the Model Layer than an actual layer that exists in between the model and it’s clients.

As I came up the ranks I’ve noticed that a lot of questions like “where do I go now?” or “is this the right way to go?” often go unanswered and I usually get my answers by people telling me how wrong I am about my theories and that I should consider x, y and z.

» Read more: The Service Layer Series

How to watch a log file in realtime in Ubuntu Linux

November 13th, 2011 by rvdavid 3 comments »

There are times when I’m debugging code on a linux box that I want to see what’s being logged by a Web Site or Web Application. What I used to have to do was do something on the website, then open up a terminal in Ubuntu (or any other linux distro for that matter) and view the logfile with either vim, nano, cat | less or gvim.

How I used text editors to do it
I use VIM as my default text editor on Ubuntu or any other linux distros (such as redhat, centos, debian, linux mint) that I work on.

A few weeks from now I used to use vim to open the log file, then the :e (edit) command to reload the new log entries.

Based on the entry, I make adjustments as required, then try again.  Back to vim, issue the edit command, review the changes, then run the script again. So on and so forth.

Now this is kind of did what I wanted it to do, but what I really wanted it to do was display the log in realtime so that I can just keep going back to the terminal and see what’s wrong without having to do the additional second step of running the edit command.

The way of opening up a log file in a text editor, then reloading the log file in the editor was very cumbersome. I needed a way of seeing the log file in realtime so that I did not have to keep reloading.

» Read more: How to watch a log file in realtime in Ubuntu Linux

How to fix things when Ubuntu Unity Dock Gets Stuck

November 6th, 2011 by rvdavid 1 comment »

Upgraded to Ubuntu 11.x yet? I have, and while I was not a big fan of 11.04 (believe me, I was looking for alternatives), when 11.10 came and I’m back on the Ubuntu fanboy bandwagon!

They smoothed out the UX something severe! Unity was a lot smoother and less clunky and it felt a lot more natural working with it than it did with 11.04 – I can’t pinpoint what the difference is exactly, but, generally speaking, the definition: “smoother” encompasses the experience with 11.10 in comparison the “clunky” with 11.04.

One thing that still happens from time to time though is the Unity Dock gets stuck!

I can’t remember if this is default behaviour or not, but my preference is to have my dock auto hide when it “collides” with the active windows that are either maximised or within the collision range of the Dock and man, working with a 17 inch screen, I want that extra real estate.

» Read more: How to fix things when Ubuntu Unity Dock Gets Stuck

How to Use Dia in One Window

October 22nd, 2011 by rvdavid 1 comment »

Dia is a fantastic Diagram tool that runs natively on linux. With it you can create some very pretty and logical diagrams very quick – if you know what you’re doing. To be honest though, when I had first started it, I hated the fact that it had floating panes everywhere. So I would instead use umbrello since it was a little more polished and was a UML tool.

There were times though that I would like to draw other diagrams:

  • Data flow diagrams
  • Entity Relationship Diagram
  • Flow charts
  • Random ad-hoc diagrams
For this, dia was the perfect tool. But then again I was faced with those floating panes again. I was bothered enough to do a google search and search for the possibility of having a single windowed interface for dia the diagraming tool for the job save for those f*cking floating panes!