about summary refs log tree commit diff stats
path: root/config.default.h
blob: ad048ae58c906338bdde71d4d942f0685be465b6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/*
 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
 * See LICENSE file for license details.
 */

#define TAGS \
const char *tags[] = { "1", "2", "3", "4", "5", NULL };

#define DEFMODE			dotile /* dofloat */
#define FLOATSYMBOL		"><>"
#define TILESYMBOL		"[]="

#define FONT			"fixed"
#define SELBGCOLOR		"#666699"
#define SELFGCOLOR		"#eeeeee"
#define NORMBGCOLOR		"#333366"
#define NORMFGCOLOR		"#cccccc"
#define STATUSBGCOLOR		"#dddddd"
#define STATUSFGCOLOR		"#222222"

#define MODKEY			Mod1Mask
#define MASTERW			60 /* percent */

#define KEYS \
static Key key[] = { \
	/* modifier			key		function	arguments */ \
	{ MODKEY|ShiftMask,		XK_Return,	spawn,		{ .cmd = "exec xterm" } }, \
	{ MODKEY,			XK_Tab,		focusnext,	{ 0 } }, \
	{ MODKEY|ShiftMask,		XK_Tab,		focusprev,	{ 0 } }, \
	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
	{ MODKEY,			XK_m,		togglemax,	{ 0 } }, \
	{ MODKEY,			XK_g,		resizecol,	{ .i = 20 } }, \
	{ MODKEY,			XK_s,		resizecol,	{ .i = -20 } }, \
	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
	{ MODKEY|ShiftMask,		XK_4,		tag,		{ .i = 3 } }, \
	{ MODKEY|ShiftMask,		XK_5,		tag,		{ .i = 4 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	{ .i = 0 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	{ .i = 1 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	{ .i = 2 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	{ .i = 3 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_5,		toggletag,	{ .i = 4 } }, \
	{ MODKEY|ShiftMask,		XK_c,		killclient,	{ 0 } }, \
	{ MODKEY,			XK_space,	togglemode,	{ 0 } }, \
	{ MODKEY,			XK_0,		viewall,	{ 0 } }, \
	{ MODKEY,			XK_1,		view,		{ .i = 0 } }, \
	{ MODKEY,			XK_2,		view,		{ .i = 1 } }, \
	{ MODKEY,			XK_3,		view,		{ .i = 2 } }, \
	{ MODKEY,			XK_4,		view,		{ .i = 3 } }, \
	{ MODKEY,			XK_5,		view,		{ .i = 4 } }, \
	{ MODKEY|ControlMask,		XK_1,		toggleview,	{ .i = 0 } }, \
	{ MODKEY|ControlMask,		XK_2,		toggleview,	{ .i = 1 } }, \
	{ MODKEY|ControlMask,		XK_3,		toggleview,	{ .i = 2 } }, \
	{ MODKEY|ControlMask,		XK_4,		toggleview,	{ .i = 3 } }, \
	{ MODKEY|ControlMask,		XK_5,		toggleview,	{ .i = 4 } }, \
	{ MODKEY|ShiftMask,		XK_q,		quit,		{ 0 } }, \
};

/* Query class:instance:title for regex matching info with following command:
 * xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */
#define RULES \
static Rule rule[] = { \
	/* class:instance:title regex	tags regex	isfloat */ \
	{ "Firefox.*",			"2",		False }, \
	{ "Gimp.*",			NULL,		True}, \
};
unification of engineering disciplines. I'm old enough to feel really impatient, waiting for those cholesterol-eating nano-bots they keep promising to send through my bloodstream soon. But the dangers are worrying; research shows that at least some carbon nanoparticles are poisonous to fish. As you live out your careers, I hope you'll responsibly pursue the glory without ignoring the danger. All in all, though, I'm proud to present you with the world of technological opportunity. <P>I'm having a harder time working up the appropriate enthusiasm for the parts of the real world <em>outside</em> the research lab. This world we're giving you is a fixer-upper, I'm afraid. <P>On March 11 there was a long article in the LA Times on the theme that college degrees just aren't the career guarantee they used to be. The good news for you is that Berkeley computer science graduates are still in demand. The bad news is that, to quote the article, "industries are transforming at a rapid pace as they adjust to intense competition, technological change, and other pressures. That means skilled jobs can quickly become obsolete, while others are outsourced. Educated workers are increasingly subject to the job insecurities and disruptions usually plaguing blue-collar laborers, but various factors make it even harder for some educated workers to get back into the workforce quickly. Though a college education is still one of a worker's best assets, it's no guarantee that a worker's skills will match demands of a shifting job market." <P>Well, there are two ways to think about this: the competitive way and the cooperative way. The competitive way is to think, "the article is about college graduates in general, not about Berkeley computer science graduates in particular." You have a leg up in terms of what you already know, and we like to think that you're also better prepared than most to keep learning new skills as the world changes. (Just as one example, we've done our best not to let you tie yourselves to any one programming language.) But the cooperative way to think about it is to ask yourselves <em>why</em> the world has to be organized as a shark pool. It wasn't always, you know; when I graduated from college, none of my classmates <em>worried</em> about how to protect themselves against possible future unemployment. <P>I also have an Associated Press article from May 13, just over a week ago, reporting the last day of hearings at the Kansas Board of Education as they prepare to modify their state's science curriculum to require the teaching of creationism. "State and national science groups led by the American Association for the Advancement of Science boycotted the public hearings, saying they were rigged against evolution." This is the board that has already, six years ago, removed evolution from the required biology curriculum; now they're taking the next step. <P>Don't just take this as a joke about the backwardness of Kansas. They've gone furthest down this road, so far, but the attack on science and rationality is happening in many states and at the federal level. The federal ban on stem cell research is one current way in which this religious intolerance affects that action-movie nano-bio-info future I promised you. <P>And don't get me started about the state of civil liberties in the United States today. When I was your age, we '60s radicals, who'd grown up secure in the protection of the Bill of Rights, often expressed contempt for what we called liberal values -- in those days, that phrase was an attack from the left, not from the right. I said I'd be brief today, so I won't drag you through the complete list of all the things you already know about secret "disappearances," torture, so-called "renditions" of prisoners by CIA agents to countries that practice torture openly, FBI infiltration of pacifist antiwar groups, and so on. The news reports from this country today are like the ones we found incomprehensible from places like Chile 40 years ago. <P>You're going to find yourselves in the thick of this problem in your careers. The modern surveillance state depends critically on the technology we invent, things like database mining, speech recognition, the "smart dust" project here at Berkeley. Your Cal student ID, the one that lets you into Soda Hall at night without even leaving your wallet, uses a technology called RFID -- radio frequency identification -- that allows anyone near you to read your identifying information invisibly. The US government now plans to put RFID tags in passports, so that Americans traveling abroad can be picked out easily in the crowd by terrorists or identity thieves. <P>And then there's global warming. <P>So, we're leaving you a world sadly in need of repair. As usual, it's up to the young to fix the mistakes of their elders. What can you do about it? <P>First, of course, work responsibly. These days one of the trendiest places to work is Google. They've become a verb, the ultimate mark of success for a company, by providing a tremendous service, connecting people with information. They're also a huge privacy menace, collecting information dossiers on all of us that are meant for the relatively benign purpose of advertising, but will also, I'm betting, turn out to have worse implications in our rapidly developing police state. Make sure you do work that you can be unambiguously proud about. <P>Second, don't buy into the hyper-competitive ideology of our time. Don't take it as obvious, for example, that your retirement or your health care should depend on your skills in the stock market. Don't think that to be a patriot you have to be contemptuous of the rest of the world. Don't think that terrorism is okay if it's US soldiers, or American-trained foreign allies, doing it. Don't think that extremist Islam is any worse than extremist Christianity. <P>Perhaps you can use your professional skills to help -- help in a deliberate way, I mean, <em>not</em> just rely on the idea that all technical progress will eventually become social progress. For example, four years ago some people I know started an organization called Privaterra. What they do is bring privacy technologies such as encryption to groups working for human rights in countries where privacy may be a life-or-death need. <P>And finally, do some small thing to improve the world right around you. I've been volunteering at a Berkeley elementary school. It's fun because the kids are cute and friendly and innocent, but it's frustrating because all that structure of grades and tests makes it hard to learn and hard to teach. But just this past Thursday I finally got one particular fourth-grade kid to multiply two-digit numbers successfully, and I'm still feeling the glow from that. <P><ADDRESS> <A HREF="index.html"><CODE>www.cs.berkeley.edu/~bh</CODE></A> </ADDRESS> </BODY> </HTML>