+1 to what @gbutler69 says.
I like to keep parameters that are contextual to the left, and parameters that are more likely to vary (or have sensible defaults) to the right. That way, when the function is called multiple times, you can see the difference better:
// if it's to the left, `context`'s alignment jumps around
my_function("search_string_1", context);
my_function("thing", context);
my_function("abcdefasd", context);
// vs
my_function(context, "search_string_1");
my_function(context, "thing");
my_function(context, "abcdefasd");
Also, for languages that support overloading, it lets you do this:
my_function(context, "param");
my_function(context, "param", more_stuff);
my_function(context, "param", more_stuff, even_more_non_defaults);