To give a little bit of context, I work on an software development company and we use a project management tool in which we raise tasks (we call them jiras, actually, but nevermind that) that represent work to be done.
When we work on a task, we must log the time we spent working on them, which we call “log work” or “log hours” (is the latter correct?).
Is the usage of against correct in this sentence?: “Log hours against a task”
My intuition (though English is not my first language) says that the right way to say that would be: “Log work on a task”.
But working here I’ve seen so many weird usages of against (we work with teams from other countries, and the Pakistani are the ones that use against the most) that I’m not sure if it’s just incorrect or I just don’t know this usage.
When you way “log work on this task”, the phrase “on this task” is an adjective phrase that describes the work.
When you say “log work against this task”, the phrase “against this task” is an adverb phrase that describes the way in which the work is logged.
Usually the second one is more appropriate in your context, because: the purpose of the logging is to figure out how much each task costs (that is why the word used is “against”); work that is required for many tasks can be partially logged against a each task; and the people who want the logs don’t care what you worked on. They only care how the costs are attributed.
I just thought of another meaning for “log work on this task”. In your task tracking system, there is a form that represents the task, and there are (multiple) boxes on it where you can enter hours for various purposes.
Because the form represents the task, “I logged my work on this task” can also mean that you entered the hours worked into some box on that form.
If you are expecting your audience to have faith that you entered them in the correct box, and you expect them to know that your task tracking system will add that box to work accrued against the task, then you may expect that audience to infer that you actually logged the hours against the task.
As a software engineer, you should avoid such language, since your entire value proposition is knowing how things work and making things come out right. Say “against this task”.