Thursday, December 10, 2020

Crispy oven-baked chicken wings

This is a very simple recipe for oven-baked chicken wings with very crispy skin. It uses baking soda (or baking powder) to help dry the skin out, to help make it crispy. And it cooks them first at a lower temperature, and then at a higher-temperature, which also helps make them crispy.

Ingredients
  • chicken wings or chicken wing nibbles, 1kg
    • the recipe can easily be adjusted for different quantities - you just need to modify the amount of baking soda used (and you don't need to be too precise)
    • I prefer to use packaged chicken wing 'nibbles' (where the wings have been segmented into three parts, and it includes the two main segments but not the tips). If whole wings are being used, I prefer to slice through the 'webbing' connecting the segments, so the wings sit flatter during cooking.
  • baking soda (or baking powder), ~2 tsp
    • use a bit more if using baking powder, which also has something like rice flour mixed in with the baking soda
  • salt

Preheat oven to 120 C.

Pat the wing pieces dry with paper towels.

For each segment, cut two slices across the top side, and one across the bottom side. (This is because the skin becomes quite crispy after cooking, and if you don't cut those slices across it, then when eating the wings it's easy to bite off the entire piece of skin on one side in one go).

Put the pieces in a bowl large enough to fit them. 

Sprinkle 2 tsp baking soda and some salt on the pieces, and mix it up to evenly coat them.

Ideally, put the pieces on a wire rack (to get airflow underneath them), and sit that on a tray lined with baking paper or aluminium foil (fat will drip from the chicken). If you don't have a rack, just put the pieces on a lined tray.

Cook for 30 mins at 120 C.

Turn the heat up to 220 C (or 210 C fan forced), and cook for a further 45 mins.

Monday, November 30, 2020

Acknowledging that the available evidence may be limited and not representative of the complete evidence

It's good to use evidence to make judgments, but there's a common mistake in the way this is done. This is to assume that the available evidence is sufficient for making a judgment. It may well be sufficient, but the mistake is to assume that it is.

The limitations of the available evidence need to be assessed. Until relatively-recently, we didn't have telescopes capable of detecting exoplanets (planets orbiting other stars). Then we started to get that ability but initially could only detect very large exoplanets. Back then, it would have have been a mistake to look at the available evidence and make the judgment that no exoplanets exist, or that only very large exoplanets do.

We can ask questions like: what are the limitations of our ability to gather the relevant evidence? Has all the relevant evidence been collected, keeping in mind that resources are required to gather evidence (time and money, and people who have prioritised gathering it)? Is it possible that we could obtain more evidence in the future that could support a different judgment? Do we have good reason to believe that the evidence we have gathered so far is representative of all the possible cases?

The mistake is in assuming that a judgment being consistent with the available evidence is evidence that the judgment is correct.

So not only do we need to do more than just consider the nature of the available evidence (like its limitations). We need to consider what different judgments could be consistent with the available evidence. And we need to consider what the different possibilities could be for the missing evidence, and what judgments could be consistent with each of those different possibilities. 

In the exoplanet example, back when we didn't have the technology for detecting them, we needed to consider that the missing evidence could include exoplanets. And, obviously, that the judgment "exoplanets exist" is consistent with that possibility.

We need to be honest with ourselves if this consideration of different possibilities for the missing evidence (and the judgments they would support) shows that that are multiple different (and incompatible) judgments that could be made, like both "exoplanets don't exist" and "exoplanets exist". Being honest with ourselves means admitting it when we don't currently know the answer, and holding an agnostic attitude on this matter. It means not jumping to conclusions.

It can be difficult to do this. Having an agnostic attitude to something doesn't tend to be encouraged in our society. And we tend to have a bias towards information that we have, and against potential information that we don't yet have. We tend to privilege the information we have. It's tangible, whereas the other possibilities are not.

This bias can be subtle, such as if we take the available evidence -- from which we are prematurely forming judgments -- as evidence against possibilities that are incompatible with those judgments. If the available evidence does not include exoplanets, we may take this as evidence against the possibility that further evidence will include exoplanets.

We can't use the available evidence in this fashion. The fact that certain information is available, while certain other information is not currently available, (in general) tells us nothing of how representative the available information is of the unavailable information. What information is currently available is simply an artifact of our current abilities to gather relevant information.


When I talk of 'judgments' in the above, these are often judgments about what explains some evidence. There is one type of explanation that is routinely overlooked. When there is some apparent phenomenon in the outside world, we tend to assume that the explanation of it simply exists in the outside world. But a component of the explanation may be due to the nature of ourselves and our perception.

For example, the coloured bow-shape that we see (and the position we see it at) when we perceive a rainbow is due to the character of the light that reaches the position where we are. The actual explanation has to do with light rays interacting with water droplets over a larger area than where we see the rainbow, and the light there being scattered in a large range of directions -- and thus there is light reaching many different positions, at which different rainbows would be perceived.

There can be details that we think exist in the world but which are in fact phenomena that our brains have subconsciously invented to explain other phenomena in the world. Belief in ghosts, for example. The point is that we may think we have evidence for them, we may think that we can perceive them, and not realise that actually they're kinds of explanations for other details that our brains came up with, without us clearly understanding that this is what has happened.

I would argue (and will argue, in my PhD) that belief in an intangible 'information' is an example of such a phenomena, where part of the explanation is to do with an explanation our brains construct.

When we consider what judgments (including explanations) are supported by some evidence, we need to also consider that the apparent evidence and explanation of it may have to do with the character of ourselves (such as our perception). Doing so may expand the set of possible explanations that could be consistent with the evidence.

Tuesday, November 24, 2020

Having power means having influence on a complex system, not having control

Are there theories of power in society that look at it from a systemic, complex-systems viewpoint? It's something I'd be interested to read about. I assume that works in political science at least implicitly address such details, though I don't know if any of them explicitly look at things from that viewpoint.

There's a lot of misunderstanding about power, that come from not appreciating a systemic, complex-systems viewpoint.

The basic misunderstanding is thinking that having power means having control. But this notion of control is an abstraction. There's never unalloyed control. Usually, the reality is far from that.

Rather than control, there is influence upon a complex system.

People and organisations usually can't just want a particular result and make that happen. They can only introduce an influence into a complex system. The result that will occur depends on how that and all the other influences and factors come out in the wash.

There will be a number of different influences, on different levels, and the result will be result of the interaction of these things, and feedback, and so on.


There is a common (implicit) belief that the higher the position of power, the greater the ability the person/organisation has to control what happens.

But that's not how things are.

In reality there are many competing influences and issues, and there's a need to satisfy differing people and groups, and compromises that need to be made.

There is structure in situations, through which influence plays out. The structure plays an important role in how that influence will play out. It determines what options are available. So in a government, it may be necessary to secure the support of a minor political party in order to push through a particular measure. So in this particular circumstance, the less powerful party may actually have greater influence than the more powerful party.

The power is predicated upon the existence of these structures, and those structures can break down. So again, the power is not absolute control. E.g. governments have power, but if the population gets pissed off enough and revolt then that power structure can break down.

Too often people think of policies and laws as forms of control. They think that if politicians/parties want certain outcomes then they just need to set up policies/laws that will produce that outcome. And if some desirable outcome didn't come about, that's because the politician/party didn't actually want to make it happen (to be explained by them being greedy, or evil, etc). But there's no such means of directly controlling what happens and making an outcome happen. Policies and laws are only instruments of influence, and there is usually a lot of limitations on the influence that they can exert (as well as unintended consequences of them).

A more trustworthy way of asserting which claims are supported by the evidence

This post is a preliminary attempt to express the following ideas.

We need evidence to determine whether a claim is true or not.

But in our society, claims are judged mostly not on evidence, but by who is making the claim.

Is the claim being made by an expert in the field? By a scientist? Or by some random person on the internet? Is the claim being made by a journalist? How experienced is this person? Are they a junior person, or a senior person, in their area? What is their reputation? Are they a nobel prize winner? Is the claim coming from a recognised organisation within that area (e.g. a nutritional claim from "The National Nutritional Board").

In principle, judging a claim based on the characteristics of who is making the claim (like whether they are a recognised expert on the topic) is using those characteristics as a proxy for the evidence for or against that claim. We assume that, for example, an expert knows the relevant evidence, and is able to form sound judgments on the basis of it.

However, judging claims based on who made them can be fairly unreliable.

Someone's status is not necessarily a good indicator of their knowledge or capability. One reason for this is that status tends to have a political element to it. And having more experience doesn't necessarily make someone a better judge of a topic. It might mean they are stuck in old ways of thinking, and unable or unwilling to see new ideas that challenge those ways.

What people or organisations claim is often influenced by political concerns. They aren't necessarily putting truth first.

If the science on the topic isn't settled, then different experts will have differing opinions, and it won't be reasonable to justify any particular claim based on the fact that a particular expert believes it's true. In such cases, there won't be evidence showing that a claim is true, so the 'who' (the expert) isn't a proxy for the evidence, but really a proxy for their opinion.

There can be mature fields containing beliefs that are agreed by pretty much everyone in that field, but where there isn't actually good evidence for the belief. It's just that everyone in the field is taking it for granted. (I believe that, historically, this has not been uncommon).


We may recognise the limitations of judging claims by who made them, but at the same time believe that doing so is our only practical option. No one has the time or ability to learn about every field and evaluate the evidence in it. We must defer to the experts.

While there is a lot of truth to that, there is more nuance to the matter than this. 

As explained above, there are many situations where there is no good evidence, so we can't really judge claims about them based on who made them.

Instead of feeling compelled to make a judgment in such cases, we should recognise that we usually do not need to make one. The only time we actually need to make a judgment is when we need to make some decision that requires making a judgment. If we're not in such a situation, we can remain agnostic about the issue.

And, I believe there's a better option that just deferring to what an expert claims.


The problems that 'judging claims by who made them' addresses is our lack of time and knowledge for evaluating claims. I want to suggest there is another way to address those problems.

Instead of just saying "an authority claims X", we can try to make the evidence and reasoning involved transparent, and in a fashion that opens-up the hierarchical structure of the evidence and reasoning behind the claims. We can include information about the vetting of the claims alongside the claims themselves. I'll get into the reason why I think this is a better approach.


Granted, it won't always be possible to articulate the evidence and reasoning, such as for knowledge that is based on experience. But there are plenty of areas where the evidence and reasoning can be made explicit, such as in science.

Isn't what I'm talking about already to be found in academic papers? No, I'm thinking about a very different way of presenting the information.

Central to what I'm thinking of is that the information should be organised around claims, and their hierarchical structure should be made explicit. The hierarchy of a claim's sub-claims is shown. Each sub-claim is itself treated like a claim in that it has its own page and we can see its hierarchy of sub-claims, as well as the reasoning and evidence supporting it, and information about its vetting by experts (such as pointing out problems with the evidence).

I am not talking about formalising knowledge, like using some sort of formal language/notation to specify the knowledge. I'm not talking about using some sort of mathematical means to evaluate the correctness of claims. I don't think that's possible (maybe one day, but not now). I am talking about expressing them in ordinary language. But, structuring it in a way that makes explicit the hierarchy of claims and sub-claims, and which makes explicit what are the sources of evidence for each.

These claim hierarchies should be made available in a publicly-accessible location, perhaps a website akin to Wikipedia but for claims.

Academic papers don't make the claim hierarchies explicit, and usually the evidence and reasoning for a particular claim will be distributed across several papers. And when viewing a paper you can't see a particular sub-claim and, alongside that, see information about the vetting of that claim.


By making the claim structure explicit like this, it "opens up" the elements of the justification in a way that facilitates more systematic vetting of claim structure, and providing information about its vetting.

Each claim/sub-claim is a thing that can be referenced. It has a name and a URL. It's not just something implicit within some paragraphs of text. It is a thing that can be drawn out and considered just on its own. That facilitates vetting each individual claim/sub-claim, and provides a place where information about its vetting (e.g. which experts have vetted it) can be stored. This information could also include details of any disagreements with those details.

Having the structure of the claim hierarchy being opened up like this would facilitate a more distributed process of vetting its details. It could be examined in a more piecemeal fashion. Someone could examine just a particular sub-claim. Different people could look at different sub-claims. Anyone could examine any sub-claim.


The problems that 'judging claims by who made them' addresses are the lack of time and knowledge for evaluating claims. 

I think the design I've laid out would have superior properties for this. Non-experts could look at just the top-level claim (without having to look into the details about the sub-claims), and see that has been vetted, and see any mention about issues within the sub-claim hierarchy. This information would be more trustworthy than the information that an expert has made the claim -- it would be a more reliable indicator of the truth.

Why would it be more trustworthy? Here are some reasons.

The details are more out in the open, presented in a way that's more suited for vetting, and the details of that vetting are out in the open, alongside the claims.

Because information about vetting (including any disagreements) is there as part of the claim hierarchy, there is better communication of this vetting information. It will ensure it can get more eyeballs.

Information about issues with any sub-claim can be propagated up the hierarchy of claims. So that, for example, if it's a major issue, it can be seen when viewing the top-level claim.

We can trust that the judgments reached on it (that are included along with the claim hierarchy) will be based more on the evidence and reasoning about the evidence. By having to explicitly break down a claim into a hierarchy of sub-claims, it forces more of a focus on evidence and reasoning about that evidence. And when the vetting that is made explicit is similarly broken down (addressing specific sub-claims independently of the other details), it again forces more of a focus upon the evidence and reasoning about that evidence. It will be more difficult to 'get away with' making claims that aren't grounded in evidence.


The above is just the basic picture of this idea. There would be many details to work out in practice. And though, for the reasons given above, I think such a system would likely be superior overall, that's not to say it wouldn't introduce its own kinds of issues. One last caveat is that I'm not trying to suggest that such a system would magically fix all issues to do with judging claims, I'm only suggesting that it would be an improvement over what we currently have.

Monday, November 23, 2020

Blaspheming is about challenging the suppressive nature of blasphemy codes

Blasphemy often gets framed as causing offence and hurting people's feelings. Seen in these terms, things like drawing certain cartoons seems to be going out of one's way to cause harm. Defending such acts seems to be defending something that's intentionally causing offence and hurting people's feelings.

But blasphemy codes are means of maintaining power and control within a society. They're a way of suppressing alternative and dissenting viewpoints.

Whenever religions have had the power to do so within a society, they've always (or nearly always) tried to suppress alternative and dissenting viewpoints. Blasphemy codes are a major part of how they have done this.

In some societies, the religions have lost a lot of their power and are no longer able to suppress viewpoints like they used to. In other societies, they still wield this sort of power.

The ruling powers in the society can wield blasphemy codes to suppress. Also, the people in the society can wield those powers, against minority groups, such as people of other religions or atheists. Blasphemy codes also provide a convenient excuse for punishing people, by making trumped-up charges of blasphemy.

People get brought up to believe that utterances outside of certain bounds should make them feel deeply offended and angry, and that if someone says such utterances this means they should be severely punished. These people have been brainwashed into responding this way.

It is a great thing when a society has moved beyond blasphemy codes, and where its citizens are afforded greater freedom of thought and speech. Yet certain religions wish to impose their blasphemy codes upon all societies -- with the threat of violent reprisal for any violation of those codes.

This creates a conflict. Which is more important? Freedom of thought and speech, or the power of blasphemy codes? For the reasons given above, I think that blasphemy codes are morally bad things, and freedom of thought and speech are morally good things. I think it is a bad thing to tacitly validate and condone blasphemy codes, by accepting that everyone should be beholden to them. Thus, when religion has made the opening move of saying "you must follow our blasphemy code", we should support people's freedom to respond with a violation of that code.

Online moderation should be logged for transparency

There's no transparency in online moderation. On discussion sites like Reddit and Hacker News, in online discussion forums, and things like Facebook groups, moderators can delete comments and remove users without any transparency. There's no way to see who/what was removed, or why that action was taken.

No transparency means no accountability for the moderators. Moderators are just ordinary people, with all the usual biases, pettiness, ideological zeal, and other flaws. There's no accountability that stops them from removing content and users for reasons other than them violating the group's rules. E.g. because it disagrees with their political views.

This is not good. I think moderation should be logged. The logging should record the specific comments that led to the content/user being removed, and perhaps an indication of which rule(s) were violated. It should be possible for anyone to view the record of moderation. That record should probably be read-only -- as in, users shouldn't be able to comment on the logs, as that would probably (I think) lead to endless cycles of disputes. 

I think this is more important than it seems. I suspect that more and more of our social and civil lives will end up being conducted online through things like these forums. If that happens, a lack of moderation transparency will become a larger problem, and could have serious consequences for people's lives.

Collaborative 'summary of useful points' for Reddit/Hacker News kinds of posts

Sites like Reddit and Hacker news are made up of posts, and each post is about some topic and contains a discussion thread about that topic.

The idea I want to talk about would probably be most suited to certain types of posts, not all posts. It'd be suited to posts like those about news stories, where the discussion threads usually contain a lot of interesting information that fleshes out the picture of the story.

That interesting information tends to be lost amongst a lot of "noise". It'd be quite useful to have a condensed summary of all the useful information dispersed throughout the thread. I could imagine the post having two tabs. A 'thread' tab (shown by default) and a 'summary of useful points' tab.

Is there a way we can incentivise the collaborative work of constructing this "summary of useful points"? And have a sufficiently simple design?


The following are two ideas for how it could be done. These may not be suitable, but they're at least starting points for thinking about the problem.

The first idea is to allow users to add bullet points, where each one contains a 'useful point' summary, and for these to be voted on, where their number of votes controls whether they're shown as part of the summary of useful points.

Notes

  • limit on the size of the bullet points. Perhaps 280 characters, like tweets.
  • if a bullet point has had more than, say, 20 votes, and is in the negative, then it will be hidden (though there's a link to view the hidden items).
  • let the users link a bullet point to the bits of text in the discussion thread that originally made the point. The UI details of this are beyond the scope of this post.


The other idea is that the summary of useful points is updated via a 30 minute cycle that involves a number of phases:

  1. 10 minute phase where anyone can suggest changes to the current summary. Each is limited to 280 characters. People can vote on these suggestions.
  2. 10 minute phase where anyone can write a new summary. They can use the pool of suggestions to help them decide what changes they want to make to the current summary.
  3. 10 minute phase where the new summaries are anonymously shown for voting. When viewing a new summary, users can see a diff of it compared to the current summary.
  4. The top voted summary (if it passes a critical threshold of votes) becomes the new summary, and the cycle repeats.

Notes

  • users can have the thread highlight new comments added since last time the summary was updated. There could be buttons to navigate to next/prev new comment. 
  • users can view history of changes to the summary.
  • the summary tab would show a representation of the update cycle and indicate where it currently is in the cycle. 


Could there be other possibilities? Could there be something that doesn't involve any threaded discussion at all?

Perhaps you could have a system that cycles between two phases. One is where there's a discussion thread. The next is where that content is condensed into a summary. Then this is summary is a seed for further discussion, and then the current summary plus the new discussion is condensed to form the new summary, and so on. At the end of each cycle only the summary is kept (the comments are effectively discarded -- though perhaps a read-only view of them can be accessed).

.

Related

  • I believe Stack Overflow originally wanted to have a feature a bit like this, but that doesn't seem to have panned out. Would be worth investigating.
  • Are there any other systems or designs doing something similar to these ideas?
  • Back in 2005 I wrote Slashdot Article Summaries?, which was a more basic take on the ideas outlined in the present post.

Sunday, November 22, 2020

How to help learners develop the subconscious knowledge that is the substance of our understanding

This post is a preliminary attempt to express some ideas about how to teach knowledge.

I imagine these ideas wouldn't always be applicable. To apply them you'd probably need to have a very good grasp on the material you want to teach, and you don't always have that (especially for difficult topics). It also seems like it'd be much more difficult to apply for more abstract knowledge.

Even though this post is itself an attempt to convey some knowledge, it doesn't follow its own dictates, for the two reasons given above.


We can distinguish between subconscious and conscious parts of our knowledge. The conscious parts of our knowledge are the parts you can consciously access. You can interrogate them with introspection, and they're what you can verbalise. There's also the subconscious knowledge that underlies those consciously-accessible details.

Think about what that knowledge enables a person to do. It may let them think about certain topics, draw certain conclusions, solve certain problems and so on. What we can verbally articulate of that knowledge is likely to be a pale shadow what is actually there in our brains that enable us to do all those things. There's a lot of subconscious knowledge that we can't consciously interrogate or articulate.

This subconscious knowledge is a big part of why AI and robotics is so difficult. Sophisticated AI or robotic systems would need to embody such knowledge, but we don't have a good enough grasp on such knowledge to be able to embody it (or much of it) in such systems.

The conscious knowledge, which we can verbalise, seems to "sit on top of" the subconscious knowledge, which is the foundation and main substance of our knowledge.

The subconscious knowledge seems to be what we primarily use when we actually apply the knowledge. When we're applying knowledge we're usually not explicitly thinking it through in verbal terms, and we couldn't verbalise those details if we wanted to.

Our understanding of the conscious knowledge (the knowledge we can verbalise) is grounded in the subconscious knowledge. We can create verbal definitions of concepts that are in our conscious knowledge, but our understanding of those concepts is primarily a matter of our subconscious knowledge. It is notoriously difficult to articulate your understanding of the meaning of concepts.


Despite this, it's easy to think that our knowledge equates to our conscious knowledge. For that's the knowledge that we can access. When we consider our conscious knowledge (for something we understand well), there's no obvious deficits to it. We can define the concepts that form it in terms of other concepts, and these in terms of other concepts, and so on. In this way, we can break down verbal descriptions of the knowledge into simpler and simpler elements. Once we've described the simplest concepts related to the top-level concepts for this bit of knowledge, we seem to have completed the task. Those simplest concepts seem to ground that task of describing the concepts.

But actually, as described above, there is subconscious knowledge underlying our understanding of all of those concepts in that hierarchy. It is because we have that subconscious knowledge that we can look at that description of the hierarchy of concepts in conscious knowledge and understand them. It's because of that subconscious knowledge that there doesn't appear to be anything missing when we describe the conscious knowledge.


Typically, when knowledge is presented in material like lectures, lecture notes, and textbooks, the focus is on communicating the conscious (verbalisable) knowledge. The overarching structure is to define the concepts. Within this structure there may be illustrations (examples) and exercises.

This is a problem because the subconscious knowledge is the substance of understanding. That's what we really want people to learn. Teaching them in a way that's focused around defining concepts is not a good way to get them to develop that subconscious knowledge.

While the person doing the teaching will already have the subconscious knowledge to understand those definitions, the learners will not. That makes it difficult for the learners to learn the conscious knowledge. And it's not what they should be learning in the first place -- the learning should be focused on them developing the subconscious knowledge.

This limitation of the teaching material won't be apparent to the teacher, because they already have the subconscious knowledge that makes the definitions understandable to them. (The distinction between conscious and subconscious knowledge, by the way, explains a lot of "the curse of knowledge", in which someone who understands some material is poor at communicating it because they can't see what it's like for someone who doesn't already understand the material).


But there's an obvious question here. What other option do we have but to try to communicate our conscious knowledge as best we can? By definition, we can't access our subconscious knowledge.

(We can't access it via introspection, nor do have knowledge of it from fields like neuroscience. We don't understand enough about how our brains work. If we were to eventually obtain such knowledge in an area like neuroscience, that might help in developing learning strategies, but it's not like if we could give someone a description of the subconscious knowledge they could learn it by reading that description.)

What I'm suggesting is not that we could or should try to directly communicate the subconscious knowledge. It is that the aim of the teaching should be, first and foremost, to present material to the learners that will best help them develop the subconscious knowledge. And this is not to present them the verbalisable conscious knowledge (definitions of concepts).


Here's how I think we can help people develop the subconscious knowledge.

The key is to recognise that knowledge is a problem-solving tool.

I mean "problem" and "problem solving" in very broad terms. I don't mean just things we'd usually label as problems or problem-solving. I mean that knowledge is there to help us do things. To figure things out, to achieve goals, to understand some issue, to draw conclusions, and so on.

Under the view that knowledge is a problem-solving tool, the bulk of our knowledge, which is the subconscious knowledge, is there for solving problems.

That means, to help learners develop the subconscious knowledge, we need to convey to them what the problems being solved are, and how the knowledge solves those problems.

The problem provides the motivation for the particular bit of knowledge. It lets the learner understand what that knowledge is there to enable. And we can show them how that knowledge solves the problem.

So we should always start with a motivating problem, and then present the relevant concept(s) for solving that problem. We should never introduce a concept without having first presented a motivating problem.


We should start with the most core of the problems and concepts. To do this, we can examine dependencies between the problems (and thus between their corresponding concepts). Those that don't depend on others are core ones. Ones that depend on others are not core ones. There may be multiple levels of non-core concepts.

And, we want to start with the simplest version of each problem/concept, and then progressively add wrinkles (special cases, or exception to the general rules) to those.

We should convey those details through concrete example scenarios that demonstrate the relevant issues we want to communicate (the problem and the means to solve it). And we should use a use a variety of situations to flesh out the learner's picture of them.

After we've demonstrated the problem and solution to the learner, such they have a concrete understanding, we can provide the names for the relevant concepts in that understanding. We should not provide their names until this point. 

It's less of a mental burden on the learner to do it this way. If you present the concept names up-front, the learners need to remember a name for something they don't yet understand.


The goal is to help the learner develop an understanding of the material. Teaching that's focused on concept definitions isn't communicating the bulk of an understanding (the subconscious knowledge). That sort of teaching puts more of a burden on the students' memories. The 'learning' becomes more of a matter of memorising and regurgitating information. The more extreme version of this is the "information dump". And not only is this the way students are taught material, but this broken picture of learning is built-into how students tend to be assessed, as well. So much assessment is oriented around recall of the conscious (verbal) knowledge. Like being able to remember facts and definitions.

If you can teach in a way that focuses on developing the student's understanding, it should put much less of a burden on their memory. Understanding will fix the relevant subconscious details in their heads.


The approach just outlined may seem inferior to the usual approach of describing the verbalisable knowledge (defining concepts).

Compared to presenting concrete problem scenarios first, as motivations for concepts, the usual approach of defining concepts may feel far more orderly, pure, objective and precise. Our approach may seem messier, less objective, and getting less at the heart of the knowledge.

I believe this is an illusion, that primarily comes from equating knowledge with the consciously-accessible, verbalisable knowledge. If you think knowledge equates to defining concepts, then defining concepts will appear to be how we should teach knowledge. But if you think that knowledge is primarily the subconscious knowledge, then we see the task differently.


Here's a brief example outlining how these ideas could be applied. It's not an example of the actual teaching material we'd present, but a high-level description of what such teaching material would contain.

This example concerns teaching people about relational databases. Unfortunately, if you're not familiar with relational databases, the following might not make a lot of sense. I chose them as a topic because they're something I have a bit of familiarity with, with respect to teaching about them.

The first thing we'd do is determine how 'core' each of the problems (and associated concepts) are. We'll use this information to determine what order to introduce them to the learners. We want to start first with the most core of the problems.

The most core problem that databases address is storing information. There's retrieving information, but first of all you need to store the information. And the most core problem to do with storing information that relational databases are designed to address is to do with unambiguous identification of information and the associated issue of redundancy of information. 

So we would start with some example scenarios that concretely demonstrate these problems. I'll go into some details of this in a moment.

After those problems associated with storing information, the next most core problem is that of retrieving information. Like of wanting to get different sorts of 'answers' about what is there in the stored information.

Retrieving information is less core than the first problem of dealing with redundancy, as the first problem has to do with storing the information, which needs to be done before we can retrieve information.

Perhaps the next most central problem is the need to be able to design a database to fit some situation. The sorts of situations we might face, and how we want to develop a design that avoids the redundancy potentially present in the information there.

Then there are many less core problems, associated with various more advanced or specific details that could be gone into after those.

(As an example of more specific details, in relation to database design there is the point that the abundance of Nulls in a table often indicates poor design. For the motivation for this we would provide an example demonstrating the issue. There's also issues like efficiency, accessing database information from within programs, security, and so on).

Now that we've determined how core each of the problems (and their associated concepts are), we know what order to present them to the learners, and we can figure out the details of how to present them. In the following, I'll go into more detail about how we could teach the knowledge associated with that first set of core problems, to do with storing the information. I won't go into similar detail for the other problems.


We could start by giving some example scenarios of information that may be stored. I.e. we would write down some of the information that might be stored. One of these might be information that a shop keeps about customers' purchase histories.

Then we would introduce the relevant concept names, like 'entity', 'field', 'table', and 'columns'.

We could give a couple more illustrations to help reinforce the concept names.


Then we could give some example scenarios that demonstrate the problem of being able to determine which real-world entity some information is about.

There could be an example of where there's customer information and where there's issues of determining which actual person the customer information is about.

For example, there are entries about customers and their purchases, which have the following customer names:

- Edward Henderson

- Ed Henderson

- E Henderson

it could be that the one employee added all of these bits of information, and they remember who these entries refer to (perhaps they all refer to the same person). But maybe they will forget these details in a few months. Or maybe a different employee is looking at the data and trying to figure out who each of those entries refers to. Is it the same person, or different people?

Being able to determine which person the information is about is important for being able to find all the information about a particular person. That may be just to see that information, or it may be for if we need to change that information (e.g. if that person decides to change their name, and we want to change all occurrences of their name that we've stored) or something associated with it.


Then we can give example scenarios demonstrating that, by ensuring that all entities have a unique identity, these problems are avoided. We can illustrate some of the different ways entities can have unique identity (e.g. a combination of existing fields they might have, or giving them a new field like an identification number).


Then we can illustrate why it is that information about the same entity may occur multiple times in the information we've stored.

In our example we can see it's because the one customer may make multiple purchases (on different days). So we record information about that customer for each of those purchases.

We can give other examples to show that each time an entity occurs multiple times, it's because it is related in some way to multiple instances of some other kind of entity (e.g. if a library tracks all the book borrowings of a person, that person will occur once for each borrowing).

After having illustrated this concept, we can introduce the name 'one-to-many relationship' for it.


We can present scenarios that demonstrate that where there's one-to-many relationships and there's duplication of data (like if for each purchase we stored the customers first and last names and postcode) we run into problems similar to the ones we mentioned at the start where the person's name was entered multiple times and potentially spelled in multiple different ways. Difficulties in finding all the cases you want, and in updating them, and where errors can be introduced.

Then we can show examples illustrating how this problem can be addressed by having a separate table for the 'one' entities (like customer), where all the information about the 'one' entities is stored. We've established that each entity should have unique identifier (say that each customer is given a 5 digit identifier). Thus we can just include this identifier in the 'many' table (purchases) and not have to include any other information about the customer in the purchases table.

So the only customer information that gets duplicated is its identity. The identity is something that shouldn't change, so we don't have the issues of needing to make changes to all occurrences of that same information (but even still, since it is unique, we can have the software easily find all instances of it and thus change them if we needed to).


Once we have a table that's just for the 'one' entities (in one-to-many relationships), the computer software can do things automatically for us

  • check that each entity has a unique identity (and not let us add one that doesn't have a unique identity)
  • check that a reference to an identity (in a 'many' table) is to one that actually exists (actually, and also that it's of the right type of entity, as we'll get to).
  • we can also set up the software to automatically create a unique identity (like an ID number) for new entities 

(Having a separate table for the 'one' entity in a 'one-to-many relationship' creates issue of having to cross reference the customer table if we're looking at a purchase and want to find out details about the customer (like their postcode), which adds some complexity, but later we'll see how the software can automate this).


After having illustrated these details about identities, and referencing identities where there's one-to-many relationships, we can introduce the following names for the concepts
- primary keys (what uniquely identities entities)
- foreign keys (the references to these entities)

To reinforce the understanding of these concepts we've just named, we would then further illustrate them with examples.

.

Related: Being able to explicitly reason about a concept is a skill. That post argues that learning how to reason about a concept is learning a skill, which means it requires practice. That relates to the present post in that when you provide the concrete scenarios presenting the problems and how the concepts can be used to solve them, you want to present multiple varied scenarios such that the learner can practice seeing things in these terms. And you'd want to give them exercises to do along the way, and feedback, as well.

Wednesday, November 18, 2020

News media present a misleading view of what arguments and knowledge are

An argument is meant to be a way to arrive as close to the truth as we can. It's a way of arriving at knowledge.

If parties disagree on some topic, and we want to evaluate their arguments, we need to consider questions like:

  • for this topic, what are the relevant considerations for evaluating an argument?
  • what is the evidence at hand?
  • how do each of the parties' claims stand up to reason and evidence?

But when media outlets present disagreements, they generally do so in a "he said, she said" fashion. They just present the claims, without evaluating them. They don't ask questions to dig deeper, to try to get at the truth.

This lets parties game the system. If a politician knows that their arguments will be uncritically presented, then they won't treat the disagreement as an argument, but as a PR game.

The way the media presents arguments involves an implicitly relativist view of arguments and knowledge. In this view, there isn't objective truth or knowledge. The most fundamental details presented are just what different people say. There is no evaluating those claims, because there's no notion of truth implicit in this view of arguments.

The media is a major source of the arguments that people see. The view of arguments and knowledge that it presents informs people's model of the nature of arguments and knowledge.

The "he said, she said" view makes arguments and knowledge appear relativist, and as things that don't involve reason and evidence.

"Be kind because you never know what someone is going through" is a nice sentiment but fairly useless advice

You might have heard the advice "Be kind, because you never know what someone is going through". I think that's a nice sentiment, but at the same time I think that, as advice, it's pretty useless.

This advice is meant to apply to situations where you might negatively judge someone. Perhaps they seem grumpy, or scruffy, or vague, or are exhibiting some other negative behavior or trait.

The advice sounds good -- instead of jumping to conclusions about that person, acknowledge that they might have some hidden struggles that are causing them to be that way. By following this advice you can be more compassionate.

But I think the advice is fairly useless in practice, in that it doesn't make people more compassionate.

It's predicated on the idea that people observe the behavior of the other person, and then formulate a negative judgment of the person. The advice is meant to short-circuit the second-step of that process.

Forming that negative judgment is in effect developing an explanation of the reason for the person's behavior: they're acting that way because they're a jerk, or a loser. The explanation is usually that there's some defect in the person's character.

But I don't think that two-step process (perceive, then draw conclusions) exists in reality. In reality, people's observations are the judgments. They perceive a person who is a jerk, a lazy arsehole, or a grumpy mofo. Their perception inherently contains the explanation. And that explanation appears to them to be an objective part of what they're observing.

The advice to "Be kind, because you never know what someone is going through" requires you to think that you don't actually know what the cause of someone's behavior is. But in real life we tend to always think we do, objectively, know why the person is behaving in that way (because they're a jerk, and so on).

We might appreciate the point about being kind in the abstract, but we're not likely to think it applies in the cases where it actually does.

What would better advice look like? It would acknowledge that our perceptions inherently involve explanations of what is being perceived, and that doing this is the problem.

It might look something like the following (but ideally more concise and punchy): Remember that, though your perceptions of people seem objective, your brain is subconsciously making assumptions about people's character in order to explain their behavior, and these assumptions can be wrong. Their behavior might not be because of their character, but because of what they're going through.

Example of a lightweight workflow that the OS would ideally support

Work at the computer often requires the user to undertake repetitive patterns of actions. So there's an implicit workflow to the user's activities. Ideally, the Operating System (OS) would support such workflows, to lessen the amount of repetitive busywork the user needs to do.

Here's an example of the kind of lightweight workflow I'd like an OS to be able to support. I'll leave questions of how such workflows could be supported to future posts.

This workflow is from a university tutoring job, where I was marking some assessments. (For my own reference, these were weekly labs in a database subject at JCU).

There was a spreadsheet with assessment-related information (like listings of each tutor's students), an online system (Blackboard) that students submitted their assessments to and to which their marks were added, and I kept a notes file where I kept a copy of my feedback on assessments before uploading them along with the marks.

For each of my students in the spreadsheet, I would

  1. copy their name from the spreadsheet
  2. paste their name as heading in my notes file
  3. search for their name in Blackboard
  4. click on the link for their submitted assessment
  5. scroll down to the bottom of the page
  6. click on the relevant items to download their assessment
  7. open that assessment (e.g. in Microsoft Word)
  8. check their assessment against the solution I'd printed out
  9. write my feedback in the notes file
  10. go back to the Blackboard page for the student's assessment, enter their mark, and copy and paste my feedback from my notes file.
  11. click on the 'x's on that page multiple times to get back to the list of the student assessments
  12. that listing will have scrolled back to the top of the list, so I'd have to find the student name's again
  13. click on the link next to the student's name to post their mark, and click the confirmation
  14. go back to the spreadsheet and note down that I've completed marking off this student.

These tasks involved so much switching between applications. Many of the steps involved moving the mouse pointer to a particular place on the screen. So much of the activity was: switch to this app, for step X, move the mouse pointer to the place for step X, do one or more actions, switch to this other app, move the mouse pointer to the place for the next step (or the net part of the current step), and so on. There was much repetitive tedium. There has to be a better way.

Of course, it would be possible to write a single application that encapsulates this entire process and which streamlines it all. But there is a general need to support workflows that involve multiple different applications, like in this case, and the question I have is, how can such workflows be best supported on the Operating System level?

Tuesday, November 17, 2020

The value of greater convenience at scale in technological developments

When thinking about and judging technological developments, we tend to place too much emphasis on new kinds of features, and too little value on greater convenience.

This post is talking about is an instance of how it's important to be able to consider broader details than specific cases in isolation, though it is stand-alone and you don't have to have read that post to understand it. I wrote this post to clarify my understanding of its topic, and to get a 'starting point' out there that I can later build on and refine.

Our focus here is on ways technological developments can provide benefits, and how people judge the value of those developments based on those ways. It is worth noting in passing that, of course, not all new technologies actually provide benefits. Not all of them provide benefits over what already exists. And people also judge the value of new technologies based on more than their features and added convenience. How different they seem, and how "cool" they are, play a role, for example.

New kinds of features are valued.

A new phone might have a new kind of sensor (lidar), or a new kind of camera lens (wide-angle). It might now have stereo speakers, and be waterproof.

Or a new technology's new feature might be a new category, like VR headsets.

These new technologies can do things that their predecessors couldn't do, or things that no prior technologies could do.

Often, people will evaluate a new piece of technology pretty much in terms of the number of new features it has.

Then there are technologies that don't provide any new kinds of features, they just provide greater convenience. Perhaps they can do the same kinds of things, but faster, in a lighter package, a smaller package, with greater efficiency, or easier to use, and so on.

When the iPod was first released, it was seen in such terms. It didn't have any particular features that other players didn't already have. "No wireless. Less space than a Nomad. Lame." (If you're not familiar with the iPod products, they were massively successful).

Same with the release of the iPad. There wasn't any particular new features to it. Many saw it as "just a bigger iPhone".


To dig a bit deeper, we need to switch from talking about features to talking about the ends that can be achieved with the technology. We don't think of all technologies as having "features" (what features does a plow have?), but we do think of them in terms of what they can be used to do -- what sorts of ends can be achieved with them.

When a new technology is developed, we compare the ends that can be achieved with it to those that can be achieved with existing technologies.

When evaluating new technology, people put too much emphasis on whether it can be used to achieve new kinds of ends, and too little on whether it provides greater convenience in achieving ends.

Note also that when I talk how people value new technologies, I am not talking about the value they may assign the technology for their own personal use of it. I mean the value they see in that technology itself -- the value it can provide in general ("to society").


What is perhaps surprising is that a lot of technology that, now that we're familiar with it, seems obviously to be a new category compared to what came before it, would have been seen by many when it was new as merely providing greater convenience, and not as something that enabled new kinds of ends to be achieved.

Consider when mobile (cellular) phones were first introduced. What do they let you do? They let you talk to people across physical distance. But they let you talk to people while you're outside of your home or office (or less likely, since mobile phones weren't ubiquitous, talk to someone else while they're out). This can be seen as just providing a greater convenience for talking to people. And that's likely how people would have seen it then -- they were used to talking to someone while at home or at the office. To them, that's what a phone call was. If they needed to talk to someone they could always do it when they're home or at the office. Being able to do so at other times is a convenience (for some people this was an important convenience).

Or consider when the car was first introduced. It lets you get from A to B. But you can already do that with a horse, and horses were more reliable than early cars.


There's two points here. First, it is actually true that these technologies like mobile phones or cars were "merely" providing greater convenience (in certain ways) for achieving ends that could already be done by existing means. But second, people underestimate the value of providing greater convenience, because they are considering the new technology in terms that are far too narrow.

They consider the technology by considering, what value one of those items, considered in isolation, has. They don't go much beyond this to considering the new technology in broader terms, in terms of what it would mean for there to be many of these items out there, over a period of time. For that is the actual potential (or reality) for new technology. In these broader terms greater convenience can be transformative, and can enable new things that would not have been possible without that greater convenience existing at scale.


Consider the printing press through this lens. What kinds of ends can be achieved with a printing press? A printing press can produce books. But that could already be done. And hand-made books could be more aesthetically pleasing, too. Its benefits were conveniences: producing more uniform copies, quicker and cheaper (I don't know whether it could do so when it was first developed, but if not presumably it didn't take too long before it could). 

But if we shift from thinking about what an individual printing press can be used to achieve, considered in isolation, to a broader perspective of multiple printing presses and what happens if they're operating over a period of time, we can see that the greater convenience is more significant.

More books can be produced, books can become cheaper, more people can have access to books. Over time this will help enable greater literacy and education within the populace. It enables ideas to spread and intermingle more freely. 

From this broader perspective we can see that convenience at scale can enable all sorts of things that aren't possible without it. It can enables uses that require scale, speed, lower cost etc.

For another example, consider YouTube. We are familiar with it now, and what such sharing of videos enables. But if we were not familiar or the internet and tried to consider what sorts of ends such a thing could be used for, considering those things in isolation, we would note that it does not actually enable any new kinds of ends.

Prior to the internet and YouTube, it was still possible to share video with other people. You could mail copies of VHS tapes to people. Someone could have built a company that would let users browse and view other people's videos. It could have been a catalogue company where people mail the company VHS tapes of short videos and the company would send out a catalogue with thumbnail images and short descriptions of each video. Users could mark down which videos they wanted copies of and mail that information to the company, which would then send out tapes containing those videos.

Users could even mail back information on which videos they "liked" and "disliked" videos, and the company could use that to adjust the content of future catalogues. Users could similarly write comments on videos.

This was all technically possible back then, and if you'd provided a description of the internet and YouTube to a person back then, they might have realised that the same ends could have been achieved with existing technology and wondered what the point of this YouTube was supposed to be.

If you think that such a company is fanciful because of its impracticality, that's exactly the point. The difference is that the internet and YouTube provides a greater level of convenience, and that greater convenience enables applications like YouTube to exist in practice.

Once the new technology has become commonplace, we are aware of the broader impact of its greater convenience, and we just see that impact as part of the technology itself. We thus see the new technology as obviously different (and usually, better than) the older technologies. We forget that we once saw it as basically the same but just with some quantitative tweaks.

.

The ideas in this post are related to the notion that technological development is removing constraints. Providing greater convenience is a large part of 'removing constraints'.

Monday, November 16, 2020

The woke hypocrisy about "people of colour"

One of the biggest woke distinctions is between white and non-white people. They are constantly invoking this distinction, and grouping people into one of these two categories. There's various different terms that they use for the "non-white" group, including "people of colour", BIPOC, and BAME, though there are divisions within wokedom about which of these are acceptable.

Despite being infatuated with grouping people into "white" and "non-white", and most of them being fine with the term "people of colour", they will scream murder if anyone uses the term "coloured people". There is huge hypocrisy there. If the woke were genuine about avoiding the offensive connotations associated with "coloured people", they would not accept "people of colour" either. And yet they do.

The terms "people of colour" and "coloured people" have literally identical meanings (I'm not talking about connotations here), and only differ in how directly they state the adjective. If the historical connotations associated with "coloured people" trigger offense and hurt whenever they're heard, then given how similar "people of colour" is, there is no way people could avoid having those same connotations triggered whenever they heard "people of colour".

Yet while one term generates outrage and people are fired for using it, the other (with identical meaning, and just as much ability to trigger harmful connotations) is considered (by most) acceptable, and its use is encouraged.

This is not an argument that "coloured people" should be used, it is an argument about the hypocrisy of the woke.

Like so many of the woke dictates about language, the level of outrage about using the "wrong" term is not really sincere. There may be hurtful connotations, but their supposed psychological impact are exaggerated in order to gain power over others. They seek opportunities to cry offense, to be able to point and say "Look! The evil we're fighting against is everywhere!", and to be able to bully people.

Sunday, November 15, 2020

Considering broader details than specific cases in isolation

So many people are only able to consider specific cases (like something controversial that a person said) in terms of the details of that case, and that considered in isolation. But for so many topics, it's essential to be able to consider broader details that apply to the specific case (like free-speech). There are many many examples of this, across all sorts of different domains.

In part, this post is for me to clarify my understanding of this topic and to improve my ability to express my thoughts on it. It could be refined a lot, but my main priority at the moment is to just get something out there that's a starting point.


There are cases where someone has said something that some people agree with and think is good, while other people disagree with it and think it's bad (and perhaps even harmful enough that they think the person shouldn't be allowed to say such things).  Some people can only consider such cases  in terms of the specific details of the case.

They might see that utterance as wrong, and something that shouldn't be said. And they can't go beyond this to broader principles, that might take precedence here, such as free-speech.


Not only that, but for many people they can only see the particular cases in terms of their own point of view of those cases. They take their point of view on it for granted, as if it was a basic fact about that case. So say that they disagree with what was said. They believe that the case should be handled from the standpoint that what was said was wrong.

Many broader principles can't take a stance on whether particular views are right or wrong. They're above that level. Like free speech. Because if topics are disputed, who gets to simply declare what is the correct position? Whoever could do that would have far too much power. 

But these people can not get past their perception that the view in this particular case is wrong (or right). To them there's the issue of free speech shouldn't even come into consideration in this case, because the speech was wrong.


Because many people only view things in terms of the particular cases, they interpret recourse to principles in those terms as well. So say that in a particular case there is dispute about which position is right and which is wrong. They see that case in such terms, and they are taking a particular side. If someone tries to invoke a principle, like free speech or the rule of law, as being applicable in this situation, then who this person sees as the guilty party may, for example, be allowed to say the bad thing. Thus, invoking the principle is interpreted as taking a particular side in this particular case. Anyone who has tried to invoke such principles will likely be familiar with this sort of response.

Because they can only see it in terms of this particular case, if this case seems unimportant or trivial to them, but you're making a fuss relating a principle like free speech or the principles of fair argumentation, it'll seem to them that you're making a fuss over nothing. They won't get that it's about principles, that need to be defended in general. An analogy: if someone drops a chip packet on the ground and a nearby police officer calls them out, that person might respond that it's no big deal, it's just one chip packet and that's not going to make a difference. But they're focusing on that specific situation. Any one case considered in isolation doesn't seem a big deal. If every person dropped their "just one chip packet" on the ground, these broader details of dropping chip packets in general are a big deal. The police officer can't consider every case in isolation, they have to think about the general principle.


Other examples of such broader principles include due process, the rule of law, and principles of fair dealing people and of fair argumentation.

I mentioned earlier how people often can't get past their own particular beliefs about a matter, effectively treating them as something that everyone else should take for granted. This kind of thing happens in conversations and arguments as well. Where people can't past the belief that their view X is correct. They can't see things in terms of broader principles of fair argumentation. That you can't expect other people to accept the truth of your position on your say so (for that would require you do so for their position). That you have to argue why it is true. Too often people take the truth of their position as a starting point for how they think the argument should be conducted.


Being able to rise above particular cases means being able to handle more abstraction.

It's important because it's important for understanding systemic issues, and so many important societal issues are systemic issues.


At this point I can talk a bit about what broader details actually are, and what sorts of things are missed if you focus on specific cases.

If you just focus on specific cases, you're never seeing trends or patterns. You just see case one, then case two, then case three, and you never consider case one AND case two AND case three, and what that totality tells you. You don't see cumulative effects of all the cases. You don't see the effects over different time scales.

And it's not just the instances of these kinds of things over longer time frames, it's how the instances of these kinds of things play a role in larger systems over those timeframes. In the case of free-speech, it concerns how speech across a population interacts with political happenings and power structures. How entities will try to control speech to consolidate their power.


So far I've been talking about being able to look past specific cases to broader principles that apply. There's named principles, like free speech and the rule of law. But there are other kinds of broader details that aren't really principles (and don't have names) that you miss if you only focus on specific cases.

The broader details are important in technological development. If we look at technological development through the lens of specific cases of new technological developments we will greatly misunderstand the nature of technological development.

Any individual development can seem fairly trivial and unimportant. Say we consider some new development in video games. To many people that's just a development in video games. Just something in entertainment, and unrelated to "the real world".

But the broader details here include that technology tends to be fairly 'content neutral' and that technology builds on other technology. In terms of it being 'content neutral', something developed for a particular application can often be used or built on for other applications in other domains.

And technology builds on other technology. One small improvement in gaming might be something that can be built on in some other domain and used there.

And from a broader perspective, we don't just consider individual cases in isolation, but we look at those cases together. A number of "minor" developments over the years may together enable much larger and more significant developments.

There are other broader details, like that the greater the amount of computing hardware that is produced, the cheaper computing hardware will be in general. So things that increase the use of computing, like gaming, also contribute to making computing cheaper and more accessible in other areas.

Some kinds of technologies have an impact on several fields. Consider information technology. Information technology is a central part of most fields these days, so when we consider the impact of new developments in information technology, the broader details include the impact that will have within all of those other fields.

One thing to appreciate about information technology is that a lot of it is "content free". An operating system like Linux or Windows and their user-interface -- those aren't specific to any particular domain or particular use of computers. They can be used for pretty much any sort of use.

Algorithms and maths are "content free", in the sense that they aren't tied to any specific domains. Of course they need to be applied to the appropriate kinds of data, but usually this will not tie them to any specific domain area.

Pretty much all I've just said about technology applies to science and research as well.

A couple of years ago, I wrote a post The value of basic research that argues that the value of basic research is usually considered by looking at specific cases of basic research in isolation ("what problems does this help solve?", and "this research is done to satisfy curiosity"), but should instead be considered in broader terms (like how we can't predict the value of individual stocks, but can trust the stock market as a whole to increase in value, so it is with research. And the value of basic research is less in what problems it solves, but in the longer term of what it helps enable). But note that when I wrote that post, I didn't have this specific/broader angle clear in my head, so that is not explicitly mentioned in the post.


Another case where we need to consider broader details to properly understand technological development is described in this post: The value of greater convenience at scale in technological developments. It argues that the value of technology "merely" adding greater convenience is greatly underestimated when cases of that technology are considered in isolation, and that they must be seen in broader terms to appreciate their true value. (Related to this is what I wrote in The intuition that vertical technologies are the way to meet goals in computing).


Government policies, like economic or social policies, need to be understood in broader terms, too.

Too often people only consider these in terms of specific cases, considered in isolation.

Minimum wage policy, for example. People consider minimum wages in terms of their impact on individual workers. They don't look beyond that to broader details of the impact of the minimum wage level. They don't consider the impact on companies who will be employing a number of people at whatever the minimum wages are, over an extended period of time. How will that affect the company's hiring? What sort of impact will different policies have on the economy over larger timescales?


Probabilities (statistics) also need to be thought of in broader terms. Say there's a million-to-one odds of something happening to an individual. Perhaps the odds are of them having a certain medical condition. When we consider such odds and focus on a specific case like this person, it seems almost impossible that it could apply to them. I believe that most people tend to treat such low odds as equivalent to "impossible", for this reason. But this is the wrong way to look at such odds. We need to look at this issue in broader terms, and realise that probabilities apply to a "population". There may be one-in-a-million odds that a person has this condition, but there are almost 8 billion people on Earth, so there would likely be around 8000 people with the condition. Could this individual we're considering be one of those 8000? Of course that's possible, so we can't rule it out. 

Another example involving probabilities. Say that, again, there's a million-to-one odds of something happening to an individual. Like having a dream about an old acquaintance they haven't seen in decades and then the very next day running into them on the street. Lets imagine that the odds of this are a million-to-one. Many people, if such a thing happened to them, would consider it an amazing occurrence. It would almost seem like magic or evidence of the divine. But it only seems that way if you're considering the odds in terms of this specific case of this happening to you. If you take a broader 'population-level' perspective, there's nothing remarkable about it at all. Say there's 100 000 people (out of everyone on earth) each night have dreams about acquaintances they haven't seen in decades. And say that those people each walk past 100 other people each day. And that all this applies every day of every year. Given those numbers we'd expect 10 people, every single day, to have one of these one-in-a-million occurrences.  Of course the numbers I've used are all completely contrived, but I hope the point is clear.


Evolution is another phenomena that is seen in terms of a specific case considered in isolation, rather than in broader terms. When a lot of people think of evolution, they think of the concept of evolution. This is the 'specific case' when it comes to evolution. And they think of how that concept is defined (in terms of variation, heritability and selection). But the picture of evolution in terms of this definition is very different to the picture of it in broader terms, in terms of the kinds of concrete processes that occur in practice, that can span very long periods of time. To appreciate the broader view of it, we need to appreciate the huge scale it can operate on, the gradual nature of the changes, and things like the specific sorts of structure that can apply to the evolutionary processes, like evolutionarily stable strategies, kin selection, and sexual selection. It is only by being able to appreciate it in these broader terms that we can have good intuitions about evolution. I wrote a post about this here (though didn't put the matter in terms of specific-case vs broader details).


How can people get better at looking beyond specific cases? I think probably by learning about systemic things. By learning about evolution and economics, for example. I think learning mathematics and programming are useful too. They force you to think beyond specific cases to the general case. And there's simply making a conscious effort to take a broader perspective in all situations.

I think this ability should be taught in the education system. It's very important. It has such broad importance for thinking about so many different important topics. Rather than just teaching topics that help you think in this way, like evolution and economics, it should teach the specific principle of always considering the broader details, regardless of what the topic is.

.

Related: Chris Anderson's post The Probabilistic Age.

Saturday, November 14, 2020

Walking is good for working out the structure of some writing

During the pandemic, I've been going for a lot of afternoon walks, and I've found that walking is a great way to work out what I want to say with some writing.

It helps me work out the overall structure of the writing. I can figure out that structure from scratch, and something about walking frees up my mind for that task. And I can't use some external representation of the details as a crutch. I'm forced more to justify the structure to myself.

I find it helps to speak out loud while I'm walking. I wear a pair of headphones with a microphone and record what I'm saying using my phone's voice recorder. Having it actually recorded seems to impose a bit of discipline, that aids in figuring things out.

When I'm sitting at the computer, I tend to be much more constrained by the existing content I've written. Even though I often create new documents as I'm drafting the material. It's just more difficult to figure out what the overall structure of the material should be.

In the past I've tried using whiteboards and paper-based notes to work out the structure of the material, and neither of those were as good as walking.

What working at the computer is better for is getting into the nitty-gritty of my argument and how I'm expressing that.

Journalism tracking the accuracy of beliefs jumping-to-conclusions about occurrences

People, like on platforms like Twitter, jump to conclusions based on flimsy evidence. E.g. they'll make strong judgements about people's intentions based on short, context-free video clips of some occurrence. Because the evidence is flimsy (relative to the conclusions being made), the conclusions are less likely to be true. It's not uncommon for such beliefs to be later shown to be false. The 'Covington kids' is a good example of one.

These beliefs with little or no evidence can take hold (either for everyone, or within certain subgroups). Virality can make them widely spread, and the sheer fact of how widely they're held further contributes to their "truth".

When the actual truth is revealed that can make little difference, as by that point the "truth" of the false beliefs have already been established, and the actual truth is unlikely to have virality.

One thing that might help a bit would be a form of journalism that tracks popular beliefs that spring up, and whether evidence is eventually found for or against them. Importantly, it would systematically track such cases, and see how often the beliefs end up aligning with the truth.

If you could document, over a span of years, just how many of these beliefs about happenings end up being falsified, that would be an important source of evidence that could be presented to people.

.

I believe we need "news" sources that focus more on patterns and trends, rather than specific events. This is an example of doing that.

Wednesday, October 14, 2020

Savoury Chinese sticky rice

Adapted from the Nuo Mi Fan 糯米饭 (Chinese Sticky Rice) recipe on the Make Food. Eat Food. YouTube channel.

I've always liked Chinese sausage (which I grew up knowing as "wind dried sausage"), and that and the other flavours combine quite well in this dish. It's also pretty quick and simple to make.

Makes 3 servings.

Ingredients

  • Dried shrimp, ¼ cup, rough chopped
  • Spring onion, 1 green and white parts separated and chopped
  • Garlic, 2 cloves, minced
  • Chinese sausages (lap cheong), 2, diagonally sliced
  • Dried shiitake mushrooms, ½ cup, rehydrated in 2 cups of hot water
  • Sesame oil, 1 tsp
  • Sticky rice (glutinous rice), 1 cup, washed, soaked and drained

for the sauce
  • Shaoxing wine (Chinese rice wine), 2 tbsp
  • Soy sauce, 2 tbsp
  • Oyster sauce, ½ tbsp
  • Sesame oil, 1 tsp
  • Salt, ½ tsp
  • White pepper, a dash or 2

You can either cook the rice in a rice-cooker, or in the same pan you use to initially fry the flavourings (Chinese sausage, etc). In the latter case, it would be better to use a saucepan rather than a frying pan.


Preparation.

Wash rice. Wash it until water runs clear.

Soak rice. Soak washed rice in clean water for 1 hour. Then drain the water.

Rehydrate dried mushrooms. In 2 cups of hot water for 30 minutes. Drain and mince. Set aside. Reserve the soaking liquid.


Cook the flavourings.

Heat sesame oil over medium high heat.

Sauté garlic and white parts of the spring onion until fragrant.

Add sliced Chinese sausage and fry for 1 minute.

Add chopped shrimp and mushrooms and fry for 1 minute.

Pour in the sauce ingredients and cook for 2 minutes. 


Cook the rice with the flavourings.

Turn off heat and add the drained rice. Stir to evenly distribute.

If you're going to use a rice cooker, transfer the rice mix into it. Pour the mushroom soaking liquid in with the rice mix. (It should just cover the rice. If it doesn't, you can add some water or chicken stock).

For cooking the rice in a rice cooker, do so according to the cooker's settings.

For cooking the rice in a saucepan. Use a moderate temperature initially, to bring it up to a vigorous simmer, and then turn the heat to lower so the rice gently cooks. Cover the pan with a lid, but leave a bit of a gap so some of the moisture can escape. It'll probably take about 20-25 minutes to cook. It'll be done when there's no liquid at the bottom of the pan.

 
Serve.

Dish out and garnish with the chopped green parts of the spring onion.


Note: to reheat, sprinkle a little water over the rice and reheat in the microwave for a minute or two.

Wednesday, August 05, 2020

Steamed fish fillet with ginger and rice-wine

This is a very simple and quick dish that produces very flavourful results. It's just a fish fillet, ginger and rice-wine. The fish doesn't end up tasting particularly of ginger or rice wine. They mainly serve to just enhance the fish's flavour.

Ingredients

  • Fillet of white fish (of whatever sort you'd like), 1
  • Oil. Preferably one with a fairly neutral flavour, so not olive oil
  • Fresh ginger, ~1 inch piece
  • Chinese rice wine

There's two parts to making this dish, which can be done in parallel: steaming the fish, and making the sauce.


Steam fish.

Steam the fish on a high temperature for about 4-5 mins, depending on thickness of the fillet.


Make sauce.

Thinly slice the ginger, then cut those slices into matchsticks. On a medium-low heat, fry the ginger in oil till crisp.

Add a few tablespoons of rice wine to the ginger.


Gently simmer the fish in the ginger and rice-wine for a couple of minutes. You can spoon a bit of liquid over the top of the fish to help get the flavour into it.

Friday, December 21, 2018

The still-relevant bits of this blog - an overview, 2003-2018

I've used this blog to jot down thoughts and ideas, which I sometimes want to go over. But by this point it contains so much content that it's hard for me to dive into it. This post is an attempt to provide a quick overview of its content, that: filters out posts that are no longer relevant for me, tries to organise the material into logical groupings, and summarises the basic point of each post.

On the topic of my thoughts and ideas, there's also what I've written on Hacker News, Reddit, Twitter, and Quora.

Basic Research

What is the value of basic research? Not individual pieces of basic research, but that entire category of research? My thoughts on how we can think about this question, and why basic research's value is significantly underestimated.

Scientific and Technological Development

It is useful to see scientific and technological development as removing constraints on our ability to achieve goals. This demystifies this process, and suggests possible future developments.

Information Ecosystem

The information ecosystem is all the means, across all of society, of storing, presenting, communicating, and using information. In that, how can we help truths to spread and hinder the spread of falsehoods? (one idea this post contains is a source outlining more applied kinds of mistaken reasoning and justification).

Thoughts on how we can use fact checking, and linking to supporting evidence, to help improve the information ecosystem. A goal being to make 'providing supporting evidence' more of a norm. And some thoughts on how we can make fact checking practical and as easy as possible.

An authoritative source of current scientific opinion would help. A source for reliable statistics for facts like "X% of working biologists believe in the theory of evolution". It'd be an important resource for informing the public and those making social policies.

Bret Taylor's suggestion for a Wikipedia for data (statistics, listings, etc), which still doesn't seem to have come to fruition.

A few minor things. Identifiers for news topics would help. If a topic (like a particular accident that occurred) could be given a unique identifier, and if all reporting and follow-ups on it (by all different parties) referenced that identifier. Some articles suggesting improvements to news sites. Some sites for structured representations of debates on topics (though it is questionable how much value these have): Debatepedia, spacedebate.org (which uses the Open Debate Engine, as do these two).

Related: Clay Shirky on the use of evidence in society (his response to the 2007 Edge question). He explains why "even today, evidence has barely begun to upend authority", and why, despite this, he's optimistic this is changing.

Interactive Storytelling

Can we use interactivity not for player agency, but as a means of increasing their immersion in a character's perspective? Think of something more like an interactive movie or documentary than a game. I sketch a high-level vision for this.

Some ideas for how we could use interactive storytelling teach skills like communication skills.

Minor:

A miscellaneous idea: could you use a character like a Nintendog in narrative-focused game?

(And not something I intend to pursue, but a thought on presenting stories through email correspondence. Including the idea of seeing the emails drafted in real-time.)

Though not necessarily something you'd use for interactive storytelling, here's a concept you could use in a computer game: to graphically represent a character's (like the one the player is controlling) perceptual attention. Not the area they're looking at, but the differing levels of attention they're giving to things within that area.


Cognitive

Tropes in fictional TV and movies that propagate inaccurate, damaging views. Tropes such as 'grief is always overt',  'attractiveness correlates with character', and 'intelligence is Spock-like'.

'Core world-model' as a Creole

(I'm not happy with how I described this in the original post, so the following overview puts it in different terms). Core world-model as a creole (original post titled "Knowledge as a creole"). Creoles are a type of spoken language, and they way they come about shows us that children build their understanding of a language according to an unconscious, structured process that integrates available linguistic details from their environment. I argue that we build our 'core model of the world' in a similar fashion. And like with language learning, it's difficult to modify this or integrate new details once a person is an adult. Many 'paradigm shifts' could be explained, in this view, as a result of the first generation growing up such that new insights are able to be integrated in such a fashion into their 'core model of the world'.

Related to this, Clay Shirky argues that a lack of knowledge is useful for entrepreneurs.

Poor language/concept use

Minor:

Cases where words have been adapted for use in a new context, where their original meanings are misleading in the new context. "Stretching" muscles, and radio-signal "interference".

"Analog" properties, such as the level of mercury on a thermometer, are really those whose levels can change in increments smaller than we can perceive.

Treating the meaning of some words/phrase in terms of their meaning in the abstract can cause confusion. We need to think of what their meaning is in the particular context in question. Another example of this.

Popper's "What is Dialectic?" is an excellent example the interaction between language and thought and the problems that can be thus caused.


Species, Language and Reality: an example of how language misleads us. The notion of 'species' makes it seem like there's a lack of 'intermediate forms' in fossil records, where there's no actual such issue. (Also related to the 'evolution' topic found below).

Opinions Aren't Always Just Opinions: arguing against common view that opinions are unquestionable.

Phrasing and significance: some simple examples of where language is used to make something sound significant.

Label it terrorism, do what you like: a brief post on how labelling things can make readers jump straight to emotional reactions and conclusions, skipping the step of checking whether the label is apt.


Thinking

Minor:

I had a lot of difficulty summarising the following post, and I ended up mostly re-writing it in my attempt. The original also provides a potential explanation of why we tend to overlook the negative processes.
I think critical thinking is probably a lot more important than obtaining knowledge. Not that the latter is unimportant, but that a strong core of critical thinking is necessary, along with obtaining knowledge, for good results. 
Knowledge and intelligence can be structures/processes that reflect how things are, so increase our knowledge and intelligence by obtaining more of these things (through reading, practice, etc). That is, they can be 'positive' things. But they can also be 'negative'. Critical thinking. Knowledge and intelligence that enables us to be critical, to not jump to conclusions, to not overgeneralise, to critically evaluate inferences. These negative elements are filters, they're avoid avoiding inaccurate knowledge/reasoning.
It's important to apply such filters. Many ideas come from intuition, and intuition doesn't work very well for many topics (e.g. science, technology and economics). We tend to get knowledge from what we hear/learn from others -- building new knowledge is very difficult and time-consuming -- and there's many inaccurate views out there (e.g. views that aren't accurate but are good at propagating amongst the population). There's many more ways to be wrong than to be right, and once a false view gets into your brain it can be difficult to dislodge.
Positive learning/practice can contribute to being critical, but it doesn't necessarily lead to that, and a critical attitude is somewhat of a parallel track that gets benefits aside from positive learning.
We tend to think that if we can't see how our understanding can be improved, that this is because it can't be. But the fact that we can't see how it can be improved is not because it can't, but because of the limitations of our ability to imagine such details. Basically, if we could see how our understanding could be improved, we'd already have that improved understanding. (This is an example of the generally positivist character of intuitive thinking).

A purely-speculative notion is one without any supporting evidence. When a purely-speculative notion is invoked to explain some phenomenon, it's less obvious that it's purely-speculative. Think of pre-scientific explanations of the natural world, like the spheres many believed to be associated with epicycles. The fact that it's doing explanatory work makes it seem more real, and there is something of it being nested within an explanation that makes it more difficult to take a critical eye to. Such purely-speculative notions may even become a transparent part of how we perceive/conceptualise the phenomenon, such that the fact of the phenomenon's existence and character seems to provide concrete evidence of the existence of the -- in fact, purely speculative -- phenomenon.
In a subsequent post I clarified a couple of things. What I mean by evidence: if an explanation turns out to be false we can see there was never any actual evidence for it, just information that was suggestive to us, that we incorrectly took as evidence. Some explanations really are purely-speculative: they're just-so stories that only have going for them that if they were true then they would provide an explanation. And, that purely-speculative explanations aren't intrinsically bad. They are a necessary part of theorising and obtaining a true explanation. They're bad when the lack of associated evidence isn't recognised.
In a further post, I distinguished between a potential explanation (that demonstrates nothing more than a potential, and neither indicates that it is the explanation nor rules out other potential explanations), and an actual explanation (that demonstrates that this, out of all the possible explanations, is the actual explanation of the phenomenon). No amount of potential explanation evidence can demonstrate that something is the actual explanation. The inability to imagine an alternative explanation is often cited as evidence that a potential explanation must be the actual explanation, but it does not provide any evidence for this.
When we draw a conclusion about X (an item, a situation, etc) we should do so by looking at the properties of X that are relevant to whether that conclusion holds or not. It is, however, very easy to take lazy shortcuts --- to jump to conclusions -- and draw that conclusion based on generalisations that apply to X rather than actually looking at the particulars of X. This is an example of that.

Instead of judging whether something is plausible by trying to imagine whether it could exist (the flaw in this is that positivist attitude), we should try to find reasons why it couldn't exist -- and if we can't, be agnostic about whether it could exist or not. If you need to take some action action that's dependent upon whether the thing exists or not, that action needs to go one way or the other, but even this doesn't require you to have a definitive belief.


A benefit of learning to program. There's times when you think you understand something, but in fact you don't really.  Programming makes you better at spotting such cases, and I think can help your ability to spot such cases outside of programming as well.

There's a strong tendency to assume psychological cases for medical conditions. Some examples. Duodenal ulcers used to be blamed on psychological factors. As was scurvy (which was also blamed on environmental factors).

Wikipedia's list of common misconceptions (direct link).


Missing the thickets for the forest. Focus too much on the trees and you can miss the forest. But focus too much on the forest and you can miss the intermediate structures -- patterns or structures within the whole -- the thickets.

Fact memorisation supplants thinking. A focus on learning lightweight facts, which give you rote instructions (like the 'tips' that lifestyle shows tend to focus on), hinders ones ability to think about a situation.

Short Michael Shermer article on relativism. "Wronger Than Wrong: Not all wrong theories are equal" (direct link).

In demonstrating or evaluating an argument, we tend to focus on the reasoning between the premises and the conclusion. But I think the larger part of whether the conclusion is true is whether the premises themselves are true. The premises usually aren't just facts, but an outlook, a framing, a kind of model of the world, which setup the kinds of ways we reason from the facts to the conclusions.

Understanding why a map is a map of a particular territory can help us to avoid confusing that map for the territory

Jurors are biased by animated recreations used in courtrooms.

Things we don't understand always seem intangible.

The tendency to assume that things are as we perceive them. An example of this is assuming that since qualia seems inexplicable it is so.

We often wrongly attribute properties to objects that are actually the properties of interactions. For example, that something is addictive has to do with how our bodies/brains process it, not some intrinsic 'addictiveness' property of that thing. So non-physical things (like activities such as video games) can be just as much addictive.

A link to a 10 minute video on what it means to be open-minded (direct link).

On intuition. Distinguishing between learned-intuition and heuristic-intuition. Reason and intuition both have their place, but reason is better for determining which of these is better to use in a particular situation.

False neutrals. Assuming that only alternatives to the status quo, which itself is considered 'neutral', need to be subjected to evaluation.  And trying to understand why we fall prey to false neutrals.

Janet Rae-Dupree argues that innovation is the result of hard-work, not flashes of brilliance (direct link). An article on the myth of prodigy: "A study of 200 highly accomplished adults found that just 34 percent had been considered in any way precocious as children" (direct link).

An important part of how we 'naturally' view things in the world involves, I think, essence-based things and a predominantly social/aesthetic interpretation.

A blog post (direct link) by John Hagal on an article (direct link) by Rich Karlgaard on the prevalence of, and problems with, zero-sum thinking.

In cool reflection, it's easy to underestimate the force of emotions. When you experience emotions it affects you. But when you imagine such a situation they don't (or to a much lesser degree). This makes it easy to underestimate the force of emotions, and overestimate the ease of just doing what you want.

Motivation is often overlooked as a kind of emotion, feeling or desire. I have a brief look at what factors can influence motivation and why it's not a simple matter of "wanting to do" the thing.

David Deutsch's reply to the 2001 Edge question, arguing for the importance of looking for explanations for what we see happening (direct link).
"What is it in reality that brings about the outcome that we predict?" Whenever we fail to take that question seriously enough, we are blinded to gaps in our favoured explanation.
I think F. Scott Fitzgerald's test for intelligence embodies a good notion of what intelligence is
The test of a first-rate intelligence is the ability to hold two opposing ideas in mind at the same time and still retain the ability to function.
Some posts related to that. I think it's an important skill to be able to reason about an issue without the implicit assumption that your position on it is true, and I talk a bit about what is required for doing this. It's good to understand views that you reject. Why does it make sense to others? Doing this can help guard against rejecting things simply because they seem "ridiculous" to you.

On the common but mistaken view that 'how much general knowledge you have' equates to how smart you are.

We think of size in relative-terms, relative to our own size. But this is very misleading. It's more accurate to think of something's size in terms of the amount of 'atomic' detail it consists of, and in such terms everyday objects like ourselves are very large.

Despite how perception presents the world to us, the actual physics (of "subatomic particles", so to speak) is everywhere and everything.

When we think of a book we may think of the physical object, with pages and ink printed on them. But we may get a, in some ways more accurate, picture of it by imagining it as the sequence of letters, spaces and punctuation that make up the book's content, as if that was arranged in one long line that stretches out for quite some distance.

Just an interesting thing to think of: as well as the physical Earth, there is each person's personal conception of the world, the one they actually see and experience in their heads, and there are billions of these.

Physicist Brian Greene: "The difference between making a breakthrough and not can often be just a small element of perception".

Non-experts can be better at solving problems than the experts - an example.

On the tendency to dismiss things

Some miscellaneous examples of this. There seem to be endless cases of these. What follows is a just a small grab-bag of cases I noted down.

Medical. Where a mother died after her emergency call was treated as a prank. Where a woman died because she was ignored in the emergency room of a hospital. A woman had 17cm scissors left in her after an operation, and she had a huge amount of trouble getting people to believe she was in real pain and that there was something wrong. The person who discovered that duodenal ulcers were caused by a bacteria not stress was ridiculed for holding this view.

The natural world. Giant ocean waves were long dismissed as myths, despite the fact that they actually exist (as has now been definitively shown).  Early reports of geysers weren't taken seriously.

Systemic Worldview

The world works in systemic ways, so the ability to think in systemic terms is so important.

People tend to think that the only or best way to address problems or to achieve goals are with 'vertical' (domain or problem-specific) solutions.  But I argue that 'horizontal' (domain-agnostic, often 'infrastructure') solutions are often more important (the linked post is talking about this specifically in the context of software).  Vertical solutions are appealing because it seems they're directly focusing on the goal you want solved, while the latter seems spread too thinly.  The key to appreciating horizontal solutions is that instead of being for a specific goal they help enable them.  (This is closely related to the distinction between applied and fundamental research).

It's important to appreciate the kinds of 'systemic effects' that can make systems work in counterintuitive ways.  Such as when incentives are poorly aligned.  Some examples of this, to do with why enterprise software is so often poor.  Another example - Bruce Schneier's notion of CYA (Cover Your Ass) security: "much of our country's counterterrorism security spending is not designed to protect us from the terrorists, but instead to protect our public officials from criticism when another attack occurs".

An example of systemic effects.  In the article "Internet Killed the Alien Star", Douglas Kern contends that the UFO movement has been largely killed off because of the internet and other technological developments, such as camera phones.

Change is messy, and this is under-appreciated in practice.  In 2009 Clay Shirky wrote "Newspapers and Thinking the Unthinkable".  Newspapers are going away, it'll take some time to invent alternative venues for journalism, and the whole process will be messy (and how the history of printing press can help us understand this).

Chris Anderson article 'The Probabilistic Age': "Our brains aren't wired to think in terms of statistics and probability." (direct link)

The following subsections are cases of concepts that help in appreciating things in systemic terms.

A broader notion of affordances

Donald Norman's notion of affordances: the character of physical objects suggests how we can interact with them.  I think there's value in a broader notion of affordances: the character of entities (whether physical objects, or things like mental concepts) shape how we perceive, think about, or do things.

It's very easy to underestimate the affect of convenience and reminders in determining whether a person will actually undertake some activity, so we tend to underestimate the importance of affordances.

An example of software affordances: when there's a language for creating some data (e.g. a templating language for generating HTML pages), the degree to which the form of the code matches the form of the data to be generated is an affordance.

Some more examples of affordances, and the utility of having a very general notion of affordances.

Evolution

Our usual language for talking about evolution tends to be misleading, so I suggest some alternatives. And, prompted by a comment on that post, some elaboration.

Most people only understand the definition of evolution, which by itself provides a misleading picture of it.  To be able to think sensibly about evolution requires understanding a bit about what evolutionary processes are like in practice.

Some miscellaneous things relating to evolution:

The Copenhagen Interpretation of quantum physics and the theory of evolution seem fundamentally at odds with each other, and the latter has much better evidence in favour of it.

Could debilitating grief be, in part, a 'precautionary tale' to help others avoid whatever caused it?  This could have evolved through kin selection.

Could our 'inner voice' have evolved as a way to re-use existing machinery (for processing external voices) for a general-purpose intra-brain communication mechanism?

The Intelligent Design movement claims that natural selection couldn't have produced lifeforms.  Lifeforms are too complex, they say.  But even if that were true, why don't they consider the possibility that life's the result of some other, as yet unknown, naturalistic mechanism?

Most descriptions of microbial evolution avoid using the term 'evolution', and this "may have a direct impact on the public perception of the importance of evolutionary biology in our everyday lives.", says a (quite readable) article in PLoS Biology.  Related to this, doctors who don't appreciate that antibiotic resistance is an evolved trait tend to prescribe antibiotics in a way that encourages such evolved resistance -- leading to so-called superbugs.  I link to a blog post on this topic.

Reductionism

'Reductionism' is very often misunderstood.  I try to clarify what it really means.

A simple case where reductionism appears wrong but isn't: stacking two planks of wood does more than increase the overall strength by two.  The flaw in the reasoning stems from treating an abstraction ('strength') as a literal thing.

The whole is greater than the imagined coming together of the parts: usually when it's claimed that "the whole is greater than the sum of the parts" in some situation, that claim isn't based on a precise, concrete understanding of what the "sum of the parts" really is, but more just on an intuitive impression of what the "sum of the parts" would be.  This is another flawed reason why people thing reductionism is wrong.

Laddered skills

Skills are 'laddered': you have to go through the lower-rungs on the ladder to get to the higher-level or more advanced competencies.   Lower rungs tend to be simplified, rough capabilities; higher-rungs tend to refine them.  It's often assumed that the results of advanced competencies can be achieved by simply knowing what they are and trying hard enough, but it takes substantial time and practice to work your way through the rungs up to that level.

It's difficult to imagine higher-rungs above our skill level, which intuitively makes it feel like they don't exist.  It's difficult to imagine how we'd reach a higher-level, which makes it feel like there isn't a point in trying.  And it's difficult to imagine what having a high-run ability would enable, which makes it feel like there wouldn't be a point anyway.  But these are just limitations in our abilities to imagine, which we should expect to experience and which we should ignore.

Acquiring knowledge is acquiring a skill.  As we learn a skill we refine our abilities, and develop fluency.  I suggest that acquiring knowledge is literally a matter of acquiring skills, and follows this same pattern.

Being able to explicitly reason about a concept is a skill.  One rung on the ladder of cognitive skills is being able to explicit reason about concepts.  Doing so requires being able to override intuitions and a fair bit of practice.  It's an important skill for being able to draw reasonable conclusions about a topic, which also means that non-fiction books arguing for a particular conclusion should pay heed to this and try to help the reader develop skills in reasoning about the concepts involved.

Laddered skills don't just apply to individuals, they also apply to organisations, like companies or countries.  A society has to have developed to a certain stage before it can maintain a democracy, for example.  Democracy can't be installed into a primitive society in one fell swoop or just by "trying hard enough" to install it.  I'm curious about how societies evolve.  What are the rungs, such as in how how legal systems and other institutions come to be and get fleshed out?



Computing

How I think file-system tagging should work.  To be truly viable, the tagging system needs to utilise hierarchy in two ways: hierarchical tag namespaces, and tags being scoped to sub-hierarchies of the directory hierarchy.

Minor:

Simulations, for teaching learner drivers, could present them with the sorts of unusual circumstances that can cause accidents (e.g. another car suddenly behaving erratically)


An idea - a smart-phone 'slush pool' for making small payments practical: the user gets convenience because they can make small purchases using this 'slush pool' without needing to enter a password, and at the same time have minimal risk because they require a password to add money to the slush pool and it can only ever contain a small amount of funds (e.g. a max limit of $10).  [Written in 2010 - recent technologies like fingerprint and facial identification lessens the need for such measures].

Is there a way to incentivise and support summaries of threads on discussion sites like Reddit?


Would it be useful to have a "Stack Overflow" for finding research material in a subject area?  It could help people from outside a field (including those trying to get into the field) to find out about relevant research in the field, from people in that field.  I discuss the issue of incentives for contributing to such a resource.  Perhaps this need has been, since writing this post, served by Quora or some subreddits.  I'm not sure.


Immersive language teaching.  2004 article on software developed by the University of Southern California to provide an immersive virtual environment for learning language in a more natural way.

Using Wikipedia as a source of canonical tag names.  To get the canonical tag name for a subject, get the URL of the wikipedia page for that topic and use the right-most part of it as the tag name. e.g. Ten-pin_bowling from http://en.wikipedia.org/wiki/Ten-pin_bowling


User-interface

Minor:

A user interface principle: operations should be applicable to a type of information, regardless of the context it appears in.  If an operation can be applied to an X, it should (unless there's a good reason not to) be able to be applied to Xs anywhere they appear.

Visually referencing web-page elements: we could provide better support for users to provide visual references to elements of webpages or applications, to help in writing instructions for using them.  To enable showing rather than telling.

Some minor ideas for operating-system user interfaces.  For switching between windows: hit a shortcut key then gesture mouse in direction of desired window, or have the shortcut key bring up a small schematic map of desktop at mouse-pointer location.  For file-explorers, have an optional 'Recent Folders' navigation pane.  In the top-half of the left-hand pane, it lists the folders you've recently navigated or moved/copied files to.

Dealing with files in a higher-level fashion: not needing to specify a name or location for the file, and not needing to explicitly save them.  The posts go into some specifics of this: Sep 2007, Jun 2008, Mar 2009.  This is an area where the software landscape has changed since writing these posts, with the way things like Google Docs and mobile apps operate.

Different communication mediums have different affordances.  One dimension these affordances range along is from encouraging more lightweight and transient content (twitter, chat), to encouraging content that's more substantial and longer-term (e.g. email).  Would it be useful for this to be explicitly acknowledged by the software tools, such that a conversation could be 'promoted' from a lighter-weight medium to a more heavier-weight one, when that made sense, where by this transition was seamlessly handled and tracked by the software?

A couple of thoughts on what the smart-phone analogue of Vim-like modal editing would be.

Fan menus: an idea for taking the combining the best parts of radial/pie-menus and conventional context-menus. The menu rendered like a conventional context-menu, with an additional radial element for more quickly selecting between the menu items. (After having prototyped this, I don't think it quite works, but I do have an idea for another variation that might work better.  I intend to write it up sometime).

Some minor ideas for visually representing information in software tools.  For word processors or text editors.  When searching for text, display something like a mini-map to show an overview of the occurrences in the entire document.  (I wouldn't be surprised if this has been implemented in some tools by now).  A facility for showing recent changes to the document (in a fashion like Word's 'Track Changes'), indicating the order the changes we made in, and giving control to the user over the time period to show changes for (e.g. 'today', or 'last 3 hours').  Being able to automatically make more concise representations of information, and to dynamically adjust the level of detail in the representation.  Making it concise by tailoring it for a particular person and/or purpose.

A few basic ideas for weather forecast sites/apps.

Copy-editing marks and annotations.  The Signal vs Noise blog argues that copy-editing marks are better than how 'track changes' edits are rendered, and I see this as an example of our current software's generally poor handling of annotation.

A couple of user-interface ideas.  'Highlighting equivalent links' in the browser: if the user mouses-over a link, and the page contains any other links pointing to the same destination, highlight those as well.  Hold-and-swipe touch-screen gesture - an advanced gesture that could be utilised on touch-screen devices: the user holds their thumb on the screen while swiping with another finger.

Idea: personal subject-lines for emails.  Instead of seeing software as presenting an objective view of information, see it as a personal tool for the user, suited to how they see things and how they want to use it for the tasks they're trying to achieve.  For example, instead of an email inbox simply showing the subject-lines of the received emails, why can't the user change what it says for a subject-line, if that made it more informative for them in the context of how they're going to use that email, or where it'd make it easier for them to find it in the future?

Magic Ink: Information Software and the Graphical Interface, by Bret Victor is a powerful argument for why, in designing software, greater emphasis should be given to graphic design and less to interaction.  All his writings are quite good, and worth a read.

Visualisations

These aren't necessarily computing-related, but it made sense to me to put these next to the user-interface section.

Minor:

Cecilia Burman provides an effective way of showing what prosopagnosia (face blindness) is like
"If individuals were rocks, then it's like having to remember the characteristics of each rock, and try to realise when you come across this rock again, from your memories. The page uses photos of different rocks so you can see for yourself the sorts of difficulties involved."
A map someone has done of US states, where states have been renamed for countries with similar GDPs.

An antipodes map someone has made: select a location and see where the exact opposite side of the world is located.


Jon Udell's idea for augmented reality map views (e.g. that could label the details you're seeing outside an airplane window).

Having historical overlays for Google Maps: A service like Google Maps could have a date-slider that allows you view the world at different times in the past, and see the different country names and boundaries and the like.  It could even show particular culture's views of the world at a particular time (what places they knew of, and what they called them).

Australia is a large land-mass, but the actual size of the populated area of Australia is much smaller.  It would be interesting to be able to visualise this, and compare it to the size of other countries.  (And of course, it would be interesting to see such details for other countries, too).

Lokesh Dhakar's visual catalogue of types of baseball pitches.  Each picture is a simple graphic that intuitively captures the essential character of a type of pitch.

Video of Hans Rosling showing some impressive visualisation of statistics using the Trandalyzer tool.  Graphs are used to show the statistics, but interactivity and animation is used to show changes over time, to transition between related perspectives, and to drill down into more detail.  There's an impressive flow: one perspective raises certain questions, so he modifies the view to try and get insight into them.

Imagine being able to visualise the exact location of a piece of meat (e.g. a steak) within a 3D rendering of the animal it came from.  Or within an animated rendering of the animal, as it's grazing around in a paddock.  As a way of making visible a reality we know is true but can't see.

Taking before-and-after shots of things like house construction from the exact same positions and angles, would enable better comparison.

Links to some visual illusions.  A face that looks calm when viewed up close, but angry when seen from a distance.  Invisible changes: images that are continuously changing but which appear static.  A large collection of various optical illusions.

Extending cut-and-paste

I think it'd be beneficial for software to better support working with structured information, and to allow users to do so in a fluid way.  The following is one possible area for doing this.

Introduction.  The motivation for these features is to provide a more direct way for users to convert their intentions into actions. (In passing I'll note that this is also the main benefit of the Vim text editor).

Being able to view and interact with the clipboard contents in a window, and being able to edit these contents (and the motivation for this).

Allowing multiple clipboard items, and some reasons for wanting this: (1) repeated pastes of an item, interleaved with unrelated cut and paste operations, (2) interactively searching for the same set of terms in different documents, (3) batch copying, and (4) a specific case of batch-copying from an online bibliography.

Storing clipboard history.  Being able to select multiple items in clipboard contents and history.  Being able to 'peek' at the next paste item.

How more complicated cut-and-paste operations could be specified, by using CTRL+SHIFT to add modifier keys.  How such operations could be specified for text copied from context-menus such as "copy link location" in a web-browser.

Controlling where in the clipboard list to cut/paste to/from, and whether a cut/copy replaces an existing item or inserts a new item, and whether a paste leaves the item in the clipboard or not.  Cut/copy the item at the end, or at a specific position (either replacing the item already there, or inserted as a new item there). Paste from anywhere in the list, and 'pop-pastes' that remove the pasted item from the list.

Multiple items in the text may be separated by delimiters (e.g. commas).  Cut/copy these as individual items in the clipboard list ('split copy', and some concepts for thinking about this, as well as some motivation for it).  And pasting multiple items from the clipboard as text separated by specified delimiters ('joining paste').

Template paste: paste a 'template' containing the contents of multiple clipboard items.

Formatted paste: when pasting from rich-text documents into plain-text ones, be able to automatically convert rich-text formatting (bold, italics, etc) into plain-text equivalents (e.g. *bold*, /italics/).

Thinking about software

"Non-functional" aspects of software (like usability) are very important, yet new software is often dismissed because it doesn't do anything that existing software can't.  IT people, in particular, have a very strong tendency to compare software only in terms of the functions they can perform.  An example of this: the claim that choice of implementation language doesn't matter.  Affordances are an important kind of non-functional property of software.

Software is a tool, and we can't predict exactly how users will use tools (a quote relating to this, and an example).  We should acknowledge this in the design of software.  I believe that, ideally, a piece of software would be a program written in it's own very high-level domain language.  For example, the WinAmp program you get would be a program in the WinAmp domain language.  The grammar of this language would define all the ways we can compose the components of that domain language into valid WinAmp programs.  That is, we can customise the program by changing its high-level source code.

Some Alan Kay quotes on computing as the first 'metamedium' that can 'dynamically simulate the details of any other medium'.

Programming

Minor:

Even if you're a solo developer, programming is always a team activity.  The other members of the programming team the future versions of yourself 6, 12, 24.. months from now.  A reason why you should always write code for others to read.

Defining functions within functions: if function A is only going to be used within function B, the code could be made clearer if a language allowed function A could be defined within B (at the start of it).

Sequences of lines of code may form a logical unit, but be too lightweight to break out into a separate function.  We may want to document the overall function of such sequences, or even just indicate that they form a logical unit.  Comments may be used, but there's no good way to specify the span of lines a comment applies to, so it could be useful to have a lightweight way of indicating that a sequence of lines forms a logical unit, and the post discusses how this could be done and how it'd enable those units to be 'collapsed' to provide a more concise view of a function.

When an experienced programmer is trying to learn a new language, what's the most efficient way to present them with what they need to know?  I suspect it's to provide concrete examples of the features, which show the syntax and the results you get for particular inputs.  Essentially, a collection of simple, representative examples, showing the exact inputs and outputs.

Teaching Programming

An idea: using a game to teach regular expressions.  For example, use regular expressions to attack oncoming patterns of enemies.

Against 'simple' as meaning 'fewer elements'

Software being simple doesn't equate to having fewer features, and software being complex doesn't equate to having more features.  Simplicity means being well-tailored to user's needs.

To explain this viewpoint, outlining the notion of 'qualitative perceptual concepts', and arguing that complexity is one of these concepts.

Local vs global simplicity.  What can make some software seem simpler, from the perspective of that software by itself (at a 'local' level), can actually make it more complex to use in practice, in the context of the user's use of it and other software it's used in conjunction with (at a 'global' level).

Initial vs standing simplicity.  How simple the software is initially, vs how simple it is for an experienced user.

Looking at the value of potential new features in isolation, rather than its potential benefit as part of the entire system, is a reason that software can become too complex.

Others have argued against 'minimal features' view of simplicity, and for simplicity as primarily meaning the software suits the user's perspective and tasks: Joel Spolsky (who also brings in the notion of 'elegance' meaning 'grace and economy at achieving some task'), and Dharmesh Shah (1) and (2, which also argues that software should be 'opinionated' but not 'stubborn').

Avdi Grimm teases out the various different sorts of simplicity, and the tradeoffs involved in each type.

More choices may mean more complexity, but there is some nuance to this.  How many choices you need to deal with at once is the bigger issue.

(I think this post I wrote is a bit muddled).

Education

Minor:

A goal for education: giving people confidence in their learning ability.

On Producing High-Quality Work

Minor:

Mostly this is about having high standards.

Links to some articles/posts on this.

"It's easy to make something incredible" - link to a blog post on how high-standards are basically all that's required for producing great things.

Steve Martin: "Be so good they can’t ignore you" (i.e. have really high standards)

A bit more indirectly on this point:

An AV Club interview with Ricky Gervais, including his thoughts on creative control
AVC: How do you establish that kind of creative control?
RG: I just demand it. I just simply wouldn't do anything that I wasn't terribly in charge of. I don't let anything go.
'Personas' provide requirements that are too vague (comment on a 37signals post). An example that I see in terms of high standards being central to producing high-quality creative work.

An article on the design process used by Apple's chief designer, Johnathan Ive.  Using intense iteration and trying really hard to find any flaws and areas of improvement.

People often argue against having high-standards on the grounds that it's perfectionism, and perfectionists get stuck and can't produce output.  This is a failure to distinguish between the 'immobilised perfectionist' and the 'persistent perfectionist'.

Philosophy

Just because something has always been a philosophical question doesn't mean it will always remain so.  We may obtain a concrete understanding of the matter, whereby it will become science.

There's learned philosophers but not philosophical experts.  Philosophy concerns what we don't have a clear understanding of.  It involves discussions and arguments and all the back and forth between these.  Progress is in clearing up confusions, and making finer points.  This means there's no established knowledge to have expertise in.  Instead, being an 'expert' means being more learned in the ins and outs of the web of philosophical discourse.  This has significance for the potential for outsiders, not part of the philosophy discipline, to make contributions to philosophical topics.

On writing, presenting, researching, getting things done

Minor:

Paul Graham's essay "Persuade xor Discover": writing to persuade and writing to discover are diametrically opposed, which is important to realise if you wish to discover (direct link).  

Some Signal vs Noise posts on communication: on usefulness of counterintuitive-seeming statements, for getting people's attention; on how "the Curse of Knowledge" makes communication difficult; on describing a slice instead of the whole pie'; and on what being a speechwriter is like, and how it's similar to doing graphic design.

A list of authors I think are good at non-fiction communication (written in 2005).

Edward Tufte's presentation tips (direct link).  Some presentation-skills lessons from Job's iPhone talk: build tension, stick to one theme per slice, add pizzazz to your delivery, practice, be honest and show enthusiasm (direct link).

Richard Hamming's advice on doing research - "You and Your Research" (direct link).  I tend to find most advice on doing research a bit ordinary, but I thought this was quite good.

Paul Graham's essay "How to disagree" (direct link).  See this also.

Rough notes on getting things done.

A Signal vs Noise post 'Do it yourself first', on why it's really beneficial for you to have tried to do a kind of work in a company before hiring someone to do it (direct link).

Misc ideas

'use by' labelling on food could be improved by distinguishing between 'use by, if unopened' and 'use by, once opened'.

An idea for between-floor transportation in buildings, combining hop-on-anytime convenience with a small horizontal footprint.  In spaces that are too small for escalators, you can have lifts, but they don't have the same hop-on/hop-off convenience. Something that's both compact and has that convenience could make the second or third floors in such spaces more practical for commerce.  Could it have other effects, such as helping people in companies spanning multiple floors communicate and collaborate more effectively?

Two thoughts about taxes.  1) Taxes would be better framed as a contribution to society rather than a deduction.  2) Journalism should be funded by taxes, because it's exactly the kind of public good that taxes are intended for -- an important infrastructure that market forces aren't suited to funding (it has strong biases against good quality content).

Imagine a large coffee-table book, with one page for each country in the world.  For each country's page, imagine a single large photograph.  Think of something like a high-school class photo, but with a larger number of people in it -- something like 200 (instead of four or five rows of people, maybe there seven or eight).  Where those 200 people have been chosen to represent the ethnic diversity of the people in the country, and something of the variation within each of the main groups (perhaps 200 people wouldn't be sufficient, maybe 300 or some other number would work better; and yes, whatever set of individuals was chosen would involve some degree of controversy, but there is positive intent behind this idea and some degree controversy shouldn't be a roadblock).  Obviously, any such thing would be a major approximation of the actual range of people in the country, but the idea is that even a book containing such major approximations would give most people a greater sense of the diversity out there than they currently have.  Personally, I think such a thing could be quite interesting.  It's obviously something that could be done as a web-site, too.

Allowing wiki-style edits on every single web-page.  A potentially practical way for this to work, and why it could be useful.

An idea for a multi-touch rhythm game, where player needs to perform actions like tapping at three positions on the screen at once, or tapping at two locations, then sliding their those two fingers along a path.

Smartphone user-interface idea, "Flow forms".  For quickly entering in data that's a sequence of multiple-choice options.  The sets of multiple choice options are laid out one after the other, and there is a vertical 'channel' for each choice option.  The options automatically scrolls up the screen, and user moves finger left or right to select which option as it passes.  So the user doesn't have to lift their finger, just move it left and right.

Reframing how digital content is sold, from you paying for the content itself to paying for the effort that went into creating it.

Metaphor appears to be deeply embedded in the character of our language and thought (c.f. Lakoff and Jonson).  Should we thus focus more on such metaphors when teaching languages?

Minor:

As an alternative scheme for presenting footnotes, write the main body of the text as if it had no footnotes and at the end of each chapter have a 'footnotes' section where, for each footnote, there's a recap of the details from the main body of the text that it is for.

It'd be interesting to have a documentary that covers the differences between fictionalised accounts of police or medical work and the actual character of the work in those fields.

Smartphone app idea, "Battlechat": a competitive real-time text chat game.

Remote-controlled cars or drones could be used as like a Logo-turtle, for teaching programming concepts.  There could be more of an emphasis on navigating the physical environment.

A laptop with a screen you could raise-up might have better ergonomics.  (I know at least prototypes of such designs have been made).

Misc points

History is all that's happened: history isn't just significant events and 'grand narratives', nor does it just include things that happened a fair while ago -- it's literally everything that has happened.  This is important, because the important things we can learn from history often involve conclusions and patterns drawn from less 'historic' seeming details. 

Structure makes structure: once there's some structure in a system, that will tend to lead to more structure, leading to more structure, and so on.

Does the existence of spam emails help to make us more critical consumers of information?

We see resolve as an expression of free-will, but resolve can be seen in a way that doesn't involve free-will: as cases where, in our conflicting desires, the 'good' ones outweigh the 'bad' ones.

A quote on the importance of paying attention to initial impressions, to help preserve an accurate account of things.

Assuming that 'every little bit counts' is counter-productive.  Resources are limited, so priorities are very important.

Exploitation of poor workers is more about poor treatment than low wages.  Low wages are not the the evil they're usually made out to be.  They're genuinely important.

Chemicals can be completely natural.  On the mistaken notion of 'chemicals' amongst the general public.

Don't be afraid to express non-unique points of view.  We may look down a little on saying things that have been said before, with it being seen as better to develop new understandings and viewpoints.  But doing so can help organise your thoughts.

Strong leadership of the JFK "moonshot" sort might be what's needed to tackle climate change.  One incentive for this is it's an opportunity to be seen as a hero to people in other countries and to future generations.

An analogy to show that, even though qualia seems so inherently mysterious, it need not actually be so: imagine a person in a remote tribe who knows nothing about modern technology, who is given a handheld games console.  Nothing from their knowledge or experience could suggest what the game world is or how it might work.

A short quip: "Unseen practice is easily mistaken for brilliance".

Misc

Minor:

Nassim Taleb on the lack of respect for those not doing steady and predictable work.  Matt Inglot on society's attitude towards people who don't have a "real job": "the fear of ... doing something different, something with an unsure ending" (direct link).

Michael Bloomberg's speech, defending scientific values.  In his address to graduates of Johns Hopkins University School of Medicine.

Jaron Lanier writes about the anti-intellectualism in today's society, the need to overcome it, and suggestions on doing so. One of the topics he focuses on is spirituality and how that can mesh with a naturalistic worldview.

Daniel Dennett's policy recommendation that every child is taught about all world religions (direct link)
Toxic religions depend on enforced ignorance of the young -- and a religion that can flourish in an informed (citizenry) is a benign religion.
A post on Kuro5hin arguing that advertising should be taxed, because of its negative effects (direct link).

I agree with the sentiment in Chris Mooney's article "The Monster That Wouldn't Die" (direct link)
I'm tired of preachy retreads of the Frankenstein myth, first laid out in Mary Shelley's 19th-century classic and recycled by Hollywood constantly in films from Godsend to Jurassic Park. I'm sick of gross caricatures of mad-scientist megalomaniacs out to accrue for themselves powers reserved only for God. I'm fed up with the insinuation (for it's never an argument, always an insinuation) that there's a taboo against the pursuit of certain kinds of knowledge and that certain technological achievements -- especially those with the potential to affect life itself -- are inherently "unnatural." 
... 
I'm extremely uncomfortable with the way in which the weapon of the Frankenstein myth is repeatedly used as a club against modern-day medical researchers, who are seeking to cure people, not to become God.

Kevin Kelly looks at how, when copies are free, you have to sell what can't be copied (direct link).  He goes into the sorts of non-copyable things that can be sold.  I outline some thought about this in terms of the view of technological development as the removal of constraints, and on why that view of technological development is useful.

Related to my PhD

My PhD Scholarship Application.

On distinctions made between 'data', 'information' and 'knowledge'.  What we really need is a better understanding of the phenomena.  It isn't very helpful to try to make sharp distinctions when our understanding is lacking.

A grab bag of things with some relation to my PhD work:

Paul Graham on discarding the assumption that it's all about us (direct link).  I believe this is key to understanding the foundations of information and semantics.
if you want to discover things that have been overlooked till now, one really good place to look is in our blind spot: in our natural, naive belief that it's all about us.
The computer revolution as a switch to imperative descriptions.  In "The Structure and Interpretation of Computer Programs", Abelson and Sussman write:
The computer revolution is a revolution in the way we think and in the way we express what we think. The essence of this change is the emergence of what might best be called procedural epistemology--the study of the structure of knowledge from an imperative point of view, as opposed to the more declarative point of view taken by classical mathematical subjects.
(Wolfram argues similar points)

How explicit does a representation have to be?  Is there really a hard distinction between explicitly and implicitly representing some details?  I suspect not.