Player agency

I labeled this post Dungeons & Dragons, but actually the issue of player agency is as true for computer games as it is for pen & paper role-playing games. Every game in which a player controls a character and a DM or a computer controls the world around that character has the same problem: How do we make the player believe that he is playing the hero who is driving the story forward, while the world around him reacts to his actions? How do we prevent the player from thinking that the game is scripted, on rails, and that it is the DM or computer who acts by throwing obstacles in the way of the character, and the character who is limited to reacting to those events?

The problem is most often presented as a difference between a linear story game and a sandbox game. However that is a false dichotomy. There are a lot of sandbox games in which player choice is an illusion, or where the player has the choice between irrelevant options like where to go, while the actually relevant events are scripted. On the other side a game that tells a story can actually have branches in the story and provide quite a lot of meaningful choices and decisions.

I recently had a problem with lack of player agency in a D&D game in which I am a player. The adventure is a WotC published one, Out of the Abyss. And because sandbox gaming is so popular, many of the WotC published adventures are presented in sandbox format. You have chapters after chapters describing locations and NPCs, but there is no written storyline. The idea is for the DM and the players to create the story together, but it is clear how that is somewhat illusory: One way or another the players end up going through the various locations presented. From one group to another the details and order of the encounters might change, but at the end of the day different groups playing through the same sandbox adventure will have similar experiences. In this particular case the DM didn’t have a lot of time to prepare, and thus ended up trying to present the encounters on the fly as we played. And somewhere in the process the story got lost, and we were just stumbling through the Underdark, getting hit by one unpleasant encounter after the other, while not knowing what actually our goal was or how to achieve it. So we really were in the situation of the world acting upon us, and us simply reacting. And with things not always going well, and the DM being fond of a gruesome narrative style of dark fantasy, at the end I felt more like a victim than like a hero.

Now the challenge for me is to run the D&D campaigns in which I am the DM in a way that this doesn’t happen. I do want the players to be the agents of the story, it should be them who drive the story forward and make the choices. However although both campaigns are presented as sandboxes, a lot of events that will happen are rather predictable. There are a lot of dungeons with rooms that contain monsters which aren’t likely to be open to negotiation. Open door, kill monster, loot treasure is the most likely sequence of events. It is hard to imagine Dungeons & Dragons without the dungeons that make up half of the name, but dungeons by their very nature aren’t all that much “sandbox”. They might not be linear, but the walls generally limit where adventurers can go. So dungeons are easily perceived as being “on rails”.

On the positive side players tend to enjoy a good dungeon romp more than they enjoy being in the middle of a sandbox without a goal. Too much guidance by a DM can be a problem, but not enough guidance can be a far more serious problem. Even in an old school hex crawl it is better if the players know towards what destination they are heading, and why.

Gardmore Abbey 5E rerun – End

I think I forgot to report one or two sessions of my Gardmore Abbey 5th edition rerun. The campaign suffered from something very typical of campaigns in my local role-playing club: Player attrition. You start with 5 players, all very enthusiastic, and then over the months real life intervenes, or enthusiasm fades, and in the end it is hard to get a quorum together.

Today we finished the campaign. The players were level 7, but they had never fought the orcs who were the main force holding the abbey. So for the grand finale I strung together two encounters: The defense of the watchtower against attacking orcs (who had brought a hill giant and dire wolf cavalry), followed by the group attacking the keep with the orc chieftain. As there were only 3 players left, these were tough fight, especially with some lucky dice rolls on my side, like the hill giant scoring a critical hit.

But in the end the group prevailed and, having done all the quests in the abbey, returned to Lord Padraig. Having previously found out how the abbey fell through the use of the Deck of Many Things, they were able to persuade the lord to give them the last remaining cards. That assembled the deck, and allowed them to draw from it.

Ander the ranger drew just one card, but it was the Talons, which destroyed all his magical items. Ouch! Raymond the librarian barbarian drew two cards, but ended up drawing cards that gave him more draws. In the end he lost 10,000 xp, got permanently cursed, and gained a rare magical weapon. Kaze the monk drew 3 cards: The first lost him 5 points of intelligence (and he had only 10). The second gave him 50,000 xp and a rare wondrous item. And the third allowed him to erase the effect of the first card. Which meant that he was the only one who got really lucky, gaining 3 levels and some nice magic boots.

The Deck of Many Things is by itself frequently a campaign-ending item, and thus not recommended unless you don’t plan to continue anyway. But with the dwindling player-base this was the good opportunity to end the campaign on a high note.

The GOP Tax Bill Rammed Through Congress on Tuesday Paves the Way to Defund and Dismantle Federal Government

Financial experts call it unworkable—and that’s what many Republicans want.

As the GOP tax bill raced through both chambers of Congress Tuesday, hurtling like a runaway train toward President Trump’s desk, Americans should see this GOP effort for what it is in the sweep of history—the Republican dismantling of federal government.

The tax bill’s specifics, with almost all of the benefits going to the very rich, confirm that the GOP’s lock on federal power is as bad as many predicted before the 2016 election. But the tax bill is also Republicans’ opening move to defund government—apart from national security, the military, infrastructure, and corporate welfare.

“The United States Senate should be doing more than providing 83 percent of the benefits in a tax bill to the top 1 percent,” Sen. Bernie Sanders, I-VT, said during the Senate debate Tuesday. “We cannot go home unless we address the very serious crises facing the working families and the middle class of this country.”

Sanders cited a long list of ignored crises—including some intentionally created by President Trump and the red-run Congress—that show the GOP is bent on destroying social safety nets. That unfinished business includes legalizing 800,000 Dreamers, or young people raised here who are the sons and daughters of non-citizens; funding community health centers that serve 27 million people; funding the Children’s Health Insurance Program serving 9 million children; real disaster relief for Puerto Rico and the Virgin Islands; fixing a multi-employer pension fund that has 1.5 million retirees at risk of losing 60 percent of their anticipated income; reforming student loan debt for 40 million people; addressing a nationwide opioid epidemic; filling 30,000 vacancies in the Veterans Administration; and funding the Social Security Administration (in 2016, 10,000 people with disabilities died while awaiting review of their benefit applications).  

“And on and on it goes,” Sanders said, without citing specifics from the tax bill, such as how its cost, triggering past legislation controlling spending, will cut Medicare’s budget by 4 percent. (Congress still has to pass a 2018 federal budget, which envisions cuts to social welfare programs, science and the environment.)

The thread that ties together this willful neglect is simple. Republicans want to devolve government back to the local level. That’s been the political right’s rallying cry ever since Franklin D. Roosevelt created Social Security in the 1930s and Lyndon B. Johnson created the Great Society’s health safety nets in the 1960s.  

The tax bill gives the GOP a way to do this. Most everybody knows the bill’s fiscal benefits accrue to the already rich. But the tax bill has also been called unworkable by academics specializing in tax law.

On Tuesday, before the House passed it, business reporters noted the bill was moving so fast that the IRS would not be able to implement it when it goes into effect. For example, employers won’t know how much to withhold from January payrolls. That “puts the onus on workers to make adjustments later in the year if too much or too little of their money is being withheld,” Patricia Cohen wrote in the New York Times. 

The New Yorker’s John Cassady noted the bill is likely to bring in less revenue than projected, because it will launch an avalanche of new loopholes to exploit.

“What isn’t yet fully appreciated is how porous and potentially unstable the rest of the tax code will be after the bill is passed,” he wrote. “With a corporate rate of just 20 percent, and a big new break for proprietors of unincorporated businesses and certain types of partnerships, the new code will contain enormous incentives for tax-driven restructurings, creative accounting, and outright fraud. Every tax adviser and scammer in the country will be looking for ways to reclassify regular salary income.”

Cassady noted these contortions are destined to undercut federal revenues, which many Republicans welcome as an avenue to shrinking the federal government.

“The shortfall in tax revenues could be enormous. Perhaps that is what Republicans want to happen,” Cassady said. “Undoubtedly, there are some in the Party who would like to see the tax base decimated, the I.R.S. crippled, and the federal government forced to slash spending on domestic programs, particularly entitlement programs. But, for anybody who believes in a properly functioning government, a rational, clearly defined tax system is essential. The Republican reform doesn’t meet that standard.”

But today’s Republican leadership doesn’t want a functioning government outside the security state, military and infrastructure that buoys corporate America.

It’s hard to know what they are thinking as one looks ahead to the 2018 elections. If the GOP doesn’t want to talk about character—which seems to be the ascendant issue, as seen by Roy Moore’s loss in Alabama and the widespread backlash against male predatory sexual behavior, driven by suburban women who are voting in droves this year—then all the Republicans can point to is their tax bill. While the GOP’s opponents will emphasize intentionally widening inequality, don’t be surprised if Republicans recast their only major legislative achievement in 2017 as a victory against the phantom enemy they love to hate: big government.

Unfortunately, as Sanders pointed out on the Senate floor Tuesday, millions of Americans are getting hurt and are going to be hurt by this needless legislation and similar moves that are sure to follow.  

 

Related Stories

  • Bannon Is Trying to Take Over the GOP Within 1 Election—Can He Pull It Off?
  • The Supreme Court Is Set to Determine if GOP Extremists Will Hold America Hostage for Years to Come
  • Here Comes the Next Big Right-Wing Attack on Our Voting Systems

Former Fox News Analyst Tamara Holder Shares Explicit Details of Sexual Assault

She spoke out after claiming Rupert Murdoch violated the terms of her settlement.

Former Fox News analyst Tamara Holder publicly revealed the details of her workplace sexual assault to CNN, because she believes Rupert Murdoch violated the terms of her settlement agreement in an interview where he described sexual misconduct allegations at Fox News as “nonsense.”

“Fox News ruined people’s lives,” Holder said. “He [Murdoch] ruined my life. I don’t have a job in TV anymore because the place that he has secured down like Fort Knox allowed abusive predators to work.”

She excoriated Murdoch for trying to downplay the pervasive culture of sexual predation at Fox News and dismiss some accounts as being “flirting.”

“Let me be clear. I had a man pull out his penis in his office and shove my head on it. That was not flirting, that was criminal. That was not sexual harassment,” Holder explained.

She said she expects to be sued for speaking out about the culture of sexual misconduct at Fox News, but believes she hasn’t violated the terms of her settlement.

“What Mr. Murdoch said, in my opinion as a lawyer, not as a victim or a survivor, as a lawyer, is that this gives me a legal right to respond,” she said. “And I’m responding not for myself, but on behalf of every woman in America who has been abused.”

Watch the full segment below.

 

Related Stories

  • The Fempire Strikes Back with #MeToo
  • DeRay McKesson Is Suing Fox News and Jeanine Pirro for Defamation
  • The GOP’s Favorite Weapon to Hijack Our Elections

Understanding Out of the Abyss

*Spoiler Warning*: This post contains spoilers about the Dungeons & Dragons adventure “Out of the Abyss” (OotA).

My first contact with Out of the Abyss wasn’t great. I was a player in a campaign based on that book, but the DM was a) inexperienced and b) had removed the starting chapter and removed it by a series of other adventures before leading us down into the Underdark. Now I can see the motivation for that: OotA starts the players as slaves of the Drow, in shackles, without gear; a start that is both somewhat cliche for the genre, and not the most pleasant one for the players. However after preparing the adventure now for another group I see how this start is absolutely essential to the adventure. Removing it leads to exactly the problem we had, that is wandering through the Underdark with no motivation, being unclear of the goal and purpose of the adventure.

The whole first half of Out of the Abyss is motivated by that start: The players escape and are pursued by the Drow. They are looking for a way back to the surface, while having to survive a harsh and strange environment, and having to find means to equip themselves. It is dark fantasy, it is a game of survival. And it doesn’t work without that start in slavery. If you ever want to play this, ask your players first if they are okay with a dark survival campaign instead of the more generic heroic fantasy.

To understand Out of the Abyss one needs to see how it inverses the sandbox approach of certain other D&D adventures, for example Princes of the Apocalypse. In Princes of the Apocalypse the dungeons and encounters are described in much detail, but it is left to the DM and players to figure out how to get from one dungeon to the next. That doesn’t work very well, because the dungeons have different levels, and playing them through in an order other than by level results in problems. Out of the Abyss takes a very different approach: The main story from the start to at least the mid-point, escaping from the Underdark, is linear. You best play chapter 1 first, then chapter 2, then chapter 3, etc., because it makes sense geographically and story-wise. But what exactly happens in each of the chapters is left open and is to be created by the interactive storytelling between DM and player. Chapter 1 is very clear about this being about a prisoner escape, but how exactly the players escape from prison is left to them. If they don’t do anything the DM has some events that will push them in the right direction, but ideally the DM first lets the players try their own ideas, and allows any half reasonable plan to succeed. The goal is for the DM and the players to both drive the story forward. D&D should never be adversarial, and for OotA it wouldn’t work at all if the DM didn’t “help” the players to escape.

One of the early highlights of that approach is chapter 4, Gracklstugh. There you get a complete description of a Duergar city in the Underdark, complete with who the different power factions are and what their interaction is. But you are left to play that city as a sandbox, the adventure doesn’t tell you where to start or which faction to support. Played right this might be a great short city adventure on its own. The obvious disadvantage of the approach, and thus of all of Out of the Abyss, is that it requires a great amount of preparation and/or improvisation from the Dungeon Master. This is very much a campaign for expert DMs. And I’ll find out in how far it works with newbie players, because that is who I am going to play it with.

Why companies hiring Interns, build their BRAND faster?

Why should company hire Intern?

Increase productivity: Speaking of additional manpower, setting up an internship program allows you to take advantage of short-term support. The extra sets of hands help your employees be more productive, prevent them from becoming overburdened by side projects, as well as free them up to accomplish more creative tasks or those where higher-level, strategic thinking or expertise is required.

Take advantage of low-cost labor: Interns are an inexpensive resource. Their salaries are significantly lower than staff employees, and you aren’t obligated to pay unemployment or a severance package should you not hire them on full time.Moreover, while their wage requirements are modest, they’re among the most highly motivated members of the workforce.

Benefit your small business: When looking for full time work, the top talent often go for big-name businesses. But when seeking internships, learning is the leading draw. Many candidates feel they’ll get more hands-on training, real experience, and mentoring opportunities with smaller organizations.

Advantages of doing the Internship for a student

Get Real Work Experience
The biggest benefit of internships is that they offer a safe space for students and graduates to gain work experience. This is important because most employers are reluctant to hire someone who’s never worked before, they think that with no experience, you’ll probably be unreliable and not know what to do or how to work. Of course, this creates a vicious circle with no way out which is why lots of graduates end up in completely unrelated fields.

Internships can be a great solution to this problem as they allow students and graduates to experience a real workplace. Apart from the vocational skills that interns gain, they also get lots of soft skills which are crucial to not only finding a job but succeeding at one as well.

Get a Taste of Your Chosen Field
One of the greatest advantages of internships is that they allow people to experience their industry and chosen profession. This usually has one of two effects – makes people more excited and drives them to work hard and build a successful career, or they realize it’s not the right career for them.

Boosts Your CV
Internships can also benefit your CV as they are a foolproof way to demonstrate that you have work experience, as well as other workplace skills. The skills can be relevant to your chosen profession, which is admittedly crucial in a CV, but they could also be other skills, including communication and people skills that employers value.

Helps You Choose a Specialty
An internship can help you identify a particular area in your industry or profession that you’re interested in and help you acquire more knowledge regarding this area.

Following are the major companies across the world always hiring Interns

  1. Facebook
  2. Google
  3. Qualcomm
  4. Microsoft
  5. Morgan Stanley
  6. Apple
  7. HP
  8. CISCO
  9. Deloitte
  10. JP Morgan and Chase
  11. Amazon.com
For any Recruitment related advice and quality human resource , feel free to mail Ms Simran (Head-HR @ http://suvenconsultants.com )

A walking tour of JavaBean

Software components are to software what integrated circuits (ICs) are to electronics: “black boxes” that encapsulate functionality and provide services based on a specification. Software reusability has long been a holy grail of software engineering and a major goal of object-oriented programming. Software components are designed to be reusable, even interchangeable.
JavaBeans are reusable software components for Java that can be manipulated visually in a builder tool.Practically, they are classes written in the Java programming language conforming to a particular convention. They are used to encapsulate many objects into a single object (the bean), so that the bean can be passed around rather than the individual objects.

Java Bean

A Java Bean is a java class that should follow following conventions:

  • It should have a no-arg constructor.
  • It should be Serializable.
  • It should provide methods to set and get the values of the properties, known as getter and setter methods.

Serialization

In computer science, in the context of data storage, serialization is the process of translating data structures or object state into a format that can be stored (for example, in a file or memory buffer) or transmitted (for example, across a network connection link) and reconstructed later (possibly in a different computer environment)

Serializable Objects

To serialize an object means to convert its state to a byte stream so that the byte stream can be reverted back into a copy of the object. A Java object is serializable if its class or any of its superclasses implements either the java.io.Serializable interface or its subinterface, java.io.Externalizable. Deserialization is the process of converting the serialized form of an object back into a copy of the object.

Why use Java Bean?

According to Java white paper, it is a reusable software component. A bean encapsulates many objects into one object, so we can access this object from multiple places. Moreover, it provides the easy maintenance.

JavaBeans Properties

A JavaBean property is a named attribute that can be accessed by the user of the object. The attribute can be of any Java data type, including the classes that you define.

A JavaBean property may be read, write, read only, or write only. JavaBean properties are accessed through two methods in the JavaBean’s implementation class −

S.No. Method & Description
1
getPropertyName()
For example, if property name is firstName, your method name would be getFirstName() to read that property. This method is called accessor.
2
setPropertyName()
For example, if property name is firstName, your method name would be setFirstName() to write that property. This method is called mutator.
A read-only attribute will have only a getPropertyName() method, and a write-only attribute will have only a setPropertyName() method.

JavaBeans Example

Consider a student class with few properties −

package com.SuvenConsultants;

public class StudentsBean implements java.io.Serializable {
private String firstName = null;
private String lastName = null;
private int age = 0;

public StudentsBean() {
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public int getAge(){
return age;
}
public void setFirstName(String firstName){
this.firstName = firstName;
}
public void setLastName(String lastName){
this.lastName = lastName;
}
public void setAge(Integer age){
this.age = age;
}
}
How to Access Java Bean Class

package com.SuvenConsultants;
public class Suven{
public static void main(
String args[]){

StudentsBean sc=new StudentsBean ();//object is created

sc.seFirsttName("Rocky");//setting value to the object
sc.seLasttName("Jagtiani");
System.out.println(e.
getFirstName());

}}
The useBean action declares a JavaBean for use in a JSP. Once declared, the bean becomes a scripting variable that can be accessed by both scripting elements and other custom tags used in the JSP. The full syntax for the useBean tag is as follows:

<jsp:useBean id = "bean's name" scope = "bean's scope" typeSpec/>


Here values for the scope attribute can be a page, request, session or application based on your requirement. The value of the id attribute may be any value as a long as it is a unique name among other useBean declarations in the same JSP.

Following example shows how to use the useBean action −

<html>
<head>
<title>useBean Example</title>
</head>

<body>
<jsp:useBean id = "date" class = "java.util.Date" />
<p>The date/time is <%= date %>
</body>
</html>

You will receive the following result − −

The date/time is Thu Sep 30 11:18:11 GST 2017 

Accessing JavaBeans Properties

Along with action, you can use the action to access the get methods and the action to access the set methods. Here is the full syntax −

<jsp:useBean id = "id" class = "bean's class" scope = "bean's scope">
<jsp:setProperty name = "bean's id" property = "property name"
value = "value"/>
<jsp:getProperty name = "bean's id" property = "property name"/>
...........
</jsp:useBean>

The name attribute references the id of a JavaBean previously introduced to the JSP by the useBean action. The property attribute is the name of the get or the set methods that should be invoked.
Following example shows how to access the data using the above syntax −

<html>
<head>
<title>get and set properties Example</title>
</head>

<body>
<jsp:useBean id = "students" class = "com.SuvenConsultants.StudentsBean">
<jsp:setProperty name = "students" property = "firstName" value = "Rocky"/>
<jsp:setProperty name = "students" property = "lastName" value = "Jagtiani"/>
<jsp:setProperty name = "students" property = "age" value = "39"/>
</jsp:useBean>

<p>Student First Name:
<jsp:getProperty name = "students" property = "firstName"/>
</p>

<p>Student Last Name:
<jsp:getProperty name = "students" property = "lastName"/>
</p>

<p>Student Age:
<jsp:getProperty name = "students" property = "age"/>
</p>

</body>
</html>

The following result will be displayed −

Student First Name: Rocky

Student Last Name: Jagtiani

Student Age: 39

Benefits of JavaBeans:

  • A Bean obtains all the benefits of Java’s “write-once, run-anywhere” paradigm. 
  •  The properties, events, and methods of a Bean that are exposed to an application builder tool can be controlled. 
  • A Bean may be designed to operate correctly in different locales, which makes it useful in global markets.
  •  Auxiliary software can be provided to help a person configure a Bean. This software is only needed when the design-time parameters for that component are being set. It does not need to be included in the run-time environment.
  •  The configuration settings of a Bean can be saved in persistent storage and restored at a later time. 
  • A Bean may register to receive events from other objects and can generate events that are sent to other objects.

Want To Learn Java?

Rage of Demons: Session 5

In the previous session the group left Gracklstugh and traveled to Neverlight Grove. As they had spent two sessions in Gracklstugh, I thought I could at the very least fill one full session with the events in Neverlight Grove. Unfortunately I was wrong, and and we had a short session due to me running out of prepared material. My bad!

The myconids of Neverlight Grove are a peaceful people, organized into circles. Even their “hunter circle” doesn’t actually kill things, but just collects corpses of anything that dies close to the village and uses them as fertilizer. So the group’s first encounter with the myconids (other than their travel companions Stool and Rumpadump) was after they killed a Shambling Mound near the village, and the “hunters” turned up and asked politely if they could collect it. That got the group a friendly welcome to the village, and a quest to kill another monster which was attacking myconids outside the village.

I had some commercial poster battlemaps of Underdark caves, and used one of them for this fight against a Grick alpha. What I hadn’t noticed was that on the map there was a pond with treasure chests visible at the bottom. So after the fight the group wanted to lift those chests, and I didn’t want to spoil their fun and say there weren’t any. So I let them roll on the appropriate treasure table in the DM’s Guide, and they ended up with a Figurine of Wondrous Power (Ebony Fly). Nice, but not overpowered.

Back in the village the group interacted with the myconids and learned that they were split in two factions. The “normal” ones were a bit naive, friendly, and not very emotional. The others were overly enthusiastic, dancing around, and awaiting a great event for tomorrow in the Garden of Welcome. They were asked not to go to the garden so as to not spoil the surprise, so of course they went.

That resulted in several fights against infected myconids and other creatures. Ultimately the group discovered yet another demon lord, Zuggtmoy, who apparently is preparing her wedding to the “Great Body”. Various infected plant creatures serve as chamberlains and bridesmaids in some sort of perverted wedding ceremony. But it is rather obvious that the group can’t stop the wedding without fighting the “bride”, and they aren’t strong enough to tackle demon lords yet. While the un-infected myconids flee, the group decides that they should do the same, and travel on towards Blingdenstone.

How College Campuses Can Uphold Free Speech AND Shut Down Racists

Give marginalized communities the space to address white nationalists on campus.

At the Center for Human and Civil Rights museum in Atlanta, Georgia, there’s an exhibit with headphones where you can sit and experience the verbal abuse that many civil rights activists lived through during the 1960 lunch counter sit-ins. They could not verbally respond to the racists, lest they suffer violent consequences. Instead, they used nonviolent protest to challenge the abusive provocation and impact the national public discourse.

I thought of that exhibit recently, as I read about the spread of racist speech seeking to incite a response on college campuses. Should we disrupt white nationalists, Nazis and other far right views? Or should we, like the civil rights pioneers, find other ways to shut down racist speech? And what role should college administrators and other decision-makers play?

A predictable pattern

We’re seeing a predictable pattern: The far right funds white nationalist speeches on university campuses seeking to provoke students, faculty and communities. When students and communities push back, the Nazis and other racists gleefully tweet and give media interviews about the chaos that ensued because of the “violent left.” Afterward, university administrators are “embarrassed” that their institution hosted a melee.

Our constitution demands that we fully support nonviolent, non-disruptive protests by students at white supremacist events. The text of the Constitution’s First Amendment reads: “Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.”

In National Socialist Party of America v. Village of Skokie the U.S. Supreme Court ruled that “a group’s request to engage in a parade or demonstration involving public display of the Nazi swastika is a symbolic form of free speech that is at least presumptively entitled to First Amendment protections.” However, as University administrators and others should be well aware, in Brandenburg v. Ohio the court also held that “government can punish inflammatory speech” if it is “directed to inciting or producing imminent lawless action and is likely to incite or produce such action.” Considering the incited violence involving campus speeches at Berkeley, University of California Davis, and others, administrators should carefully consider the implications of Skokie and Brandenburg.

Despite the death of roughly 60,000,000 people in World War II, the U.S. Supreme Court has not allowed a government ban on Nazi hate speech and symbols. So how do we responsibly exercise free speech in higher education and more broadly while holding racists accountable for their history of violence, incitement, and hate?

A productive approach

One productive approach is for university administrators to slate white nationalists (if they insist on hosting them) on debates or panels, with multiple views represented, in place of from-the-podium speeches. This arrangement allows white nationalists to air their racially biased views with direct and immediate debunking that’s put on an equal footing.

Our nation’s colleges and universities are the place where the violent and hateful views of Nazis and other white supremacists should be vigorously challenged. I suspect that many disruptions on campus would be quelled if the views of marginalized communities were formally given the space to address white nationalists, Nazis and other radical right views in campus settings. These events would become productive democratic dialogues, not dangerous monologues.

And why not replicate this in the classroom to address the ongoing outcry from conservatives that their perspectives are sidelined in higher education? I recently lectured in a sophomore seminar course using free speech on campus as the foundation for the class. I asked the students to take a public position and provide evidence to support their arguments. But they were somewhat surprised when I pushed back on their evidence.

Protecting tenure

As faculty, we have the duty to prepare our students to be critical thinkers and ready to engage in serious discourse. I am a believer in the power of evidence and the exchange of ideas—but this concept must be buttressed by our nation’s faculty and students.

For either of these suggestions to be carried out with any consistency, we must protect academic tenure, which has been a recent target of conservatives. The sacred responsibility of academia, and the power of tenure, is the ability to wrestle with our nation’s toughest debates without fear of political reprisal.

For generations, my ancestors had to endure racist abuse from white supremacists in silence. They eventually adopted ingenious nonviolent tactics. Today, we can still resist those who would deny us our rights, but college administrators, faculty and others who invite them to speak must take practical steps to make space for our voices, too.

Comparing Bootstrap With Google’s Material Design Lite : Bootstrap – ResponSive Design

Bootstrap vs Materialize

What is Materialize and Bootstrap?


Both Google’s Materialize and Twitter’s Bootstrap are front end CSS frameworks for webpages. Both are open source. In the question“What is the best CSS framework?” Bootstrap is ranked 1st while Materialize is ranked 5th. The most important reason people chose Bootstrap is:
Bootstrap is developed to be instantly compatible with all sizes of screens, so you don’t have to worry about which device the user is accessing your site from. Yet if you prefer, you can disable responsiveness of Bootstrap.

Bootstrap:

Bootstrap is a free and open-source front-end web framework for designing websites and web applications. It contains HTML and CSS-based design templates for typography, forms, buttons, navigation and other interface components, as well as optional JavaScript extensions. Unlike many web frameworks, it concerns itself with front-end development only.


Materialize:

Created and designed by Google, Material Design is a design language that combines the classic principles of successful design along with innovation and technology. Google’s goal is to develop a system of design that allows for a unified user experience across all their products on any platform.


Major Differences!

Philosophy

  • Bootstrap was originally built by Twitter with the purpose of making it easy to build responsive websites. It gives you a lot of components and customization options for making web apps.
  • Material Design Lite is a way for Google to spread its material design concept to the web. It gives you only the base building blocks for building material apps. The rest is up to the developer.

Development Experience

  • Bootstrap has a very detailed documentation. Development involves copy pasting from the examples and getting a usable result fast.
  • MDL is built around BEM, and components are built by combining multiple classes. This approach gives a great deal of control, but can sometimes lead to unwieldy HTML.

Components

  • In Bootstrap, almost all built-in HTML elements are styled and can fit nicely together in a layout. It gives you a great number of additional components for any type of design.
  • MDL gives you fewer components than Bootstrap, but they are all focused on building modern Material Design applications. They come with animations and beautiful default styles.

Layout

  • Bootstrap has an advanced grid system with offsets, column wrapping, hiding and reordering of columns.
  • MDL has a more primitive grid that gets the job done most of the time, but doesn’t support advanced features.

Design

  • Bootstrap gives you a passable default design which we have grown tired of by now, but there are plenty of wonderful themes to chose from.
  • MDL looks fresh and features bold colors and animations. It dictates exactly how your web app should look like and gives you a limited opportunity for customization by choosing base and accent colors.

Community

  • Bootstrap has been around for quite some time and has an enormous community, which produces themes, plugins and blog posts.
  • MDL came out only recently but has already become quite popular on GitHub. However it is still in its early days, and most of the time you are on your own.

Interest Over Time

    trends.embed.renderExploreWidget(“TIMESERIES”, {“comparisonItem”:[{“keyword”:”Bootstrap”,”geo”:””,”time”:”2004-01-01 2017-06-12″},{“keyword”:”Materialize”,”geo”:””,”time”:”2004-01-01 2017-06-12″}],”category”:0,”property”:””}, {“exploreQuery”:”date=all&q=Bootstrap,Materialize”,”guestPath”:”https://trends.google.com:443/trends/embed/”});

    < 1 > Grid 

    Grid is the most important part of the framework as it makes the webpage responsive for all devices. 
    • The Bootstrap grid splits the page into 12 equally sized columns. Depending on the viewport width, four different size classes are applied – extra small (from 0 to 768px wide), small (768px to 992px), medium (992px to 1200px), and large (1200px+).
    • MDL has a similar grid system, but it only has three sizes – phone (0 to 480px), tablet (480px to 840px) and desktop (840px+). MDL desktop has 12 columns, tablet has 8 columns and phone has only 4 columns.
    comparison between materialize and bootstrap
    Grid system in Bootstrap and MDL
    comparison between materialize and bootstrap
    Grid changes in Bootstrap 
    comparison between materialize and bootstrap
    Grid changes in MDL

      Docs: Bootstrap Grid | MDL Grid
      Learn Bootstrap’s Grid system

      < 2 > Header Navigation

      Headers in Bootstrap are called Navbars. They begin collapsed in mobile views and become horizontal when there is enough space for them. Inside, you can nest an array of different elements that can be positioned with the help of classes.

      Similarly, MDL header navigations start off collapsed behind a hamburger menu and expand with the growth of the viewport. They too have different stylings and possible positions.

      Header navigation bars in Bootstrap and MDL

      Bootstrap’s collapsible menu
      A hamburger menu in MDL

      Docs: Bootstrap Navbars | MDL Navigation

      < 3 > Footer

      Bootstrap doesn’t actually have separate footer components, while Material Design Lite has two options, a mini and a mega footer. For this example, we’ve translated the default MDL design to Bootstrap, using the grid and a bit of extra CSS.
      Footers in Bootstrap and MDL

      Bootstrap’s menu in mobile’s view

      MDL’s mini footer

       Docs: MDL Footers

      < 4 > Tabs

      Both frameworks use pretty similar syntax to create selectable tabs with different content. A number of links for swapping between the tabs, and an array of divs, selectable by id, for storing the content. They also both require JavaScript to work (Bootstrap requires jQuery as well).
      Tabs in Bootstrap and MDL
      Docs: Bootstrap Tabs | MDL Tabs

      < 5 > Buttons

      Bootstraps default buttons are rectangular and have a bunch of size options. They can have their color changed via CSS or with the modifier classes. Another unique feature to Bootstrap is the split button which is half button, half drop-down.
      MDL offers both rectangular and circular buttons. Google has a guide on how and in which situations to use the different types of buttons. All buttons in MDL support the ripple animation effect.
      Different Buttons in Bootstrap and MDL
      Docs: Bootstrap Buttons | MDL Buttons

      < 6 > Tables

      In Bootstrap responsiveness is achieved using a scrollbar at the bottom of the table. MDL hasn’t added responsiveness to their tables yet. But they added different styles to the tables to make it attractive!  
      Tables in Bootstrap and MDL
      Docs:Bootstrap Tables | MDL Tables 

      < 7 > Forms

      • Bootstrap’s forms support more types of input elements and have classes to make alignments to labels and inputs but it doesn’t have inbuilt library for validation.
      • While MDL has few input elements but the ones with material animation support to make them attractive and fun! they have pattern matching and verification as well. MDL support validation. 
      Forms in Bootstrap and MDL

      Docs: Bootstrap forms | MDL forms

      < 8 > Drop-down Menu

      • Here Bootstrap give you an advantage by making a button split which makes half f the button dropdown menu and half normal button.
      • While MDL gives smooth animation effects compared to Bootstrap’s technique! 
      JavaScript is needed in both the cases.
      Dropdown menu styles in Bootstrap and MDL
      Docs:Bootstraps Menu | MDL Menu

      < 9 > Tool-tips

      Bootstrap gives you the best experience in case of Tool-tips. It gives you the options to show the tool-tip at at top or at bottom or at right or at left or you could just popover it on click!
      MDL has gone with simple approach here. Just two options small and Large design. 
      Tool-tips in Bootstrap and MDL 

      Docs: Bootstrap’s Tool-tips | Bootstrap’s Popover | MDL Tool-tips

        < 10 > Icons
      Bootstrap comes with the Glyphicons icon font, which gives you over 250 pretty icons to choose from. They come bundled with the bootstrap CSS file and no special setup is needed.
      MDL uses a set of icons that Google released some time ago called Material Icons. This is a huge set of nearly 800 icons. They are not bundled with MDL so you need to link it in the HEAD section of your page:

      <link rel=stylesheet href=https://fonts.googleapis.com/icon?family=Material+Icons>

      Icons in Bootstrap and MDL

      Conclusion

      By all means Google’s Materialize Lite is shaping up as a good front-end framework. It makes the webpage look cooler! It is still the early days, but the fact that it is made by Google gives you confidence that it will always conform to the latest material design spec.
      if you don’t find Material Design appealing, there is Bootstrap with its large community. You can even get the best of both worlds by using one of the material themes that are available for it.
      Learn Bootstrap!