Welcome to the blogosphere, fl!

fl, a great friend of mine and a first-rate thinker of all things Shakespeare, has started a new blog, Pimrose Primrose Road. Here’s to the expansion of the blogosphere. I’ve added, fl’s site to my google reader. Here are the first posts:

Of course, Pimrose Road will be added to tdaxp‘s blogroll for the September update.

Happy blogging!

Giuliani’s Foreign Policy Vision, as grokked by a517d0gg

The recently engaged Adrian (congrats!) has finished his three part criqitue of Rudy Giuliani’s recent article in Foreign Affairs. (Giuliani’s words were previously both here and at Tom Barnett’s blog.)

One of the heuristics i use in judging candidates is the quality of the arguments against them. It is here that i owe special thianks to Adrian’s fine effort. While clearly the result of much thought and reflection, Adrian (who also goes by the nom de guerre a517d0gg)’s critiques either miss the mark or reinforce my support for Rudy. If these are the best that can be thrown against Mayor Giuliani, then he deserves to be President today, and not have to wait until January 2009.

Adrian’s series, “Giuliani’s Foreign Policy Vision,” is in three parts

Read them all today!

Congrats, Evan!

Evan, a good friend of mine, celebrated his graduation from Nebraska yesterday. He was kind enough to invite me, and I had a wonderful time. Thanks!

Evan’s written a top-notch thesis on Amnesty International which he should consider publishing as a book. It was an honor to read an advanced copy.

Adolescent Psychological Development, Part IV: Advanced Psychological Development

In my prior responses to Moshman’s Adolescent Psychological Development (2005), I separated rationality from rational agency, pluralist rational constructivism from the pluralist constructivism of rational agents, and identity from personhood. As “rational moral identity” figures prominently in the fourth section of the book, entitled “Advanced Psychological Development,” it would be reasonable to expect that rational moral identity would itself be separated from something it is not. However, this cannot be done, as rational moral identity is not anything.

This is not to say that Moshman does not precisely describe the concept that is so named. He does so effectively. It involves rational agency, identity, and moral reasoning. Indeed, the “Moral Reasoning Identity of Rational Agents” would be a fair term for the concept. As this term would include only aspects that Moshman presents as preferable, I do not believe he would criticize this construction. Ultimately, “rational moral identity” is not a good term for the same way that “spherical light-source” is not a good term for the sun: it is too broad to be helpful in understanding it.


First, that “rational moral identity” is in fact a moral reasoning identity for rational agents is beyond doubt. Moshman describes moral rationality as “not just rational judgments about what actions are right or wrong but also meta-ethical cognition [emphasis his] concerning the basis for and justification of moral judgments” (116). Moshman’s emphasis on the cognitive as opposed to behavioral aspects of morality is not accidental as later in the same paragraph he explicitly describes himself as “[connecting] the moral domain to the domain of epistemology.” Later, the author writes that “to have a moral identity is to have an explicit theory of yourself as systematically acting on the basis of respect and/or concern for the rights and/or welfare of others” (122), which incorporates both identity and moral reasoning. The term “rational moral identity” would certainly cover all these aspects, but such a term would diminish the contrast between a morally reasoning identity for rational agents and rational moral personhood, a traditional concept of development with which Moshman’s ideas conflict.

Rational moral personhood contrasts with rational agency-moral reasoning-identity for the reasons previously described in these essays. Rationality contrasts with rational agency as it rests on metacognition as opposed to fully-self-justified beliefs. Morality contrasts with moral reasoning as its contrasts with behaviors as opposed to explicit cognitive reasoning. Personhood contrasts with identity in its embrace of what is universal among thinking humans as opposed to what is particular of those with the aptitude and inclination toward introspective explicit justification.

Moshman concludes his eleventh chapter by writing “the promotion of rationality should be the primary purpose of education” (134). Interpreting this use of “rationality” to mean mere metacognition is probably besides the point. The twelfth and final chapter of the book, “Rationality and Liberty in Secondary Education,” ponders mainly what a school system designed to promote rational agency-moral reasoning-identity would look like. If rational moral personhood is a different goal, how then might the educational infrastructure function?

In support of the rational agency / moral reasoning / identity trinity, Moshman writes that “We want [students], above all, to be conscious of themselves as thinking, willing, active beings, bearing responsibility for their choices, and able to explain those choices by reference to their own ideals and purposes” (138). A proponent of enculturating rational moral personhood in the young, on the otherhand, might write that we went students, above all, to think rightly, to will rightly, to be rightly, and to continue to makes right choices in the face of criticism.” The focus would then not be on academic freedom but on academic rightness.

This embrace of rightness, arete, as an educational goal (see also Pirsig, 1976) recalls virtue, a concept touched on in “Eudaimonist Conceptions of Morality as Virtue,” from pages 62 to 64. However, eudaimonism applies to neither of our conceptions. Moshman correctly criticizes the eudaimonist agenda as failing the need to “establish rationality” (64). Further, I add that the section address only eudaimonism is a framework for moral reasoning, that is cognition about morality. In contrast, rational moral personhood focus on moral behaviors, whether cognitive or physical.

Thus, a true contrast between rational agency/moral reasoning/identity and rational moral personhood has yet to be written.

It is a discussion for another time.


Adolescent Psychological Development, a tdaxp series
1. Cognitive Development
2. Moral Development
3. Identity Formation
4. Advanced Psychological Development
5. Bibliography

Adding support for likert scales

I’m working on another draft of my dissertation proposal presentation (I haven’t given it yet, but I keep finding ways to make it better), and I found some scales I would like to use.

However, I realized that as the questions are pretty similar, I don’t want to have to manually put it nearly identical material each time. I also want to format the displayed questions prettily, to present a proper likert scale…


So I want to create a new feature on manage_questions, called “clone,” which will create a nearly identical copy of an question that varies only in its id. This should be pretty easy, as ruby already has an ActiveRecord::clone function that does this.

First, create a new option entry after the destroy line in app/views/manage_questions/list.rhtml:

<td><%= link_to ‘Clone’, { :action => ‘clone_question’, :id => question }, :method => :post %></td>

(clone_question is used instead of clone because clone is a reserved word)

And then in manage_questions_controller.rb:

def clone_question
time = Time.new
old_question = Question.find(params[:id])
new_question = old_question.clone
new_question["name"] = old_question["name"] + " (cloned copy at " + time.to_s + ")"
result_of_save = new_question.save
if result_of_save
QuestionOption.clone_question_options(old_question.id,new_question.id)
flash[:notice] = ‘Question was successfully cloned with ‘ + old_question.id.to_s + ‘ to ‘ + new_question.id.to_s
else
flash[:notice] = ‘Question not cloned’
end
redirect_to :action => ‘list’
end

In question_option.rb:

def self.clone_question_options(old_question_id,new_question_id)
question_options = self.find(:all,:conditions => [‘question_id = ?’ , old_question_id ] )
if question_options
for old_question_option in question_options
new_question_option = old_question_option.clone
new_question_option.question_id = new_question_id
new_question_option.save
end
end
end

One final thing: when the question options are displayed, they should be presented in the order of their option id. That’s really easy in Question.rb, edit such that:

def self.find_question_options_array(question_id)
@options = QuestionOption.find(:all,:conditions=>[‘question_id = ?’, question_id], :order => ‘option_id ASC’)
end

Finally, after some housekeeping (we don’t need the

Question list <%= @student.current_question_list %> and ordering is <%= @student.current_ordering %> line anymore), we’re done!