DAVID WEES

Thoughts from a reflective educator.

Ideas

These ideas are licensed under a Creative Commons share-alike attribution license. All I ask is that you give credit for these ideas to me, should you choose to use them.

Idea: Build a Who is this person? browser extension

I often find myself reading articles online, which almost always have quotes embedded within the article. I then copy the person's name, and search for them on Twitter and other social media, to get a sense of who they are.

I would love to have a browser extension (perhaps hooking into the context menu) which would do this for me. It should be easy to use: highlight the person's name, and then right-click and choose the "who is this?" option from the menu. An overlay would appear which would let you choose between the different possible people (which is often easy, depending on the context of the article) represented by their selected social media profiles (as configured in the settings of the extension).

Can someone build this for me?

 



Create decentralized discussion software

The biggest problems I see with all of the popular social media products are

  • that users have very little to no control over changes in the software that runs the product,
  • the users are themselves the product, specifically for advertisers,
  • if a service is turned off, all of the energy in building conversations and networks users have done is lost.

 

I'd like to see a decentralized and open-source product introduced to change this.

  • The software would operate very much like a blog,
  • You would be able to connect your site to other peoples' sites, provided permission is granted in both directions,
  • Traditional RSS and other REST services would be provided from any of the sites, allowing for separate client applications to be written,
  • Instead of a centralized service, each peer in a network would run their own hosted version of the software,
  • When someone mentioned you within your network, or linked to your posts, you would get a notification on your site,
  • The cost to maintain the service would be spread over everyone who hosts a site,
  • You would be in charge of handling your own upgrades and customizing your site,
  • It could be either installed as a standalone service or as an extension/plugin for existing services like Drupal or Wordpress,
  • Your site could include a 'what other people are saying' section, generated from related traffic to your existing network (which would allow you to discover new people),
  • Most importantly: If someone decided to drop out of the service, everyone else would remain connected as before. The time you spent building an active network could no longer be wasted by someone else deciding to shut down the service.


Update:
This exists, see Diaspora.



Physics questions

One way to describe the effect of gravity on other masses is as a distortion in space time. Is it appropriate to use this analogy for understanding the geometry (from a magnetic particle's perspective) in a magnetic field?

Is it possible that some black holes could have a electromagnetic field so strong that no particle with charge could ever escape? Would the magnetic-event horizon for such an object extend beyond the gravity-event horizon?



Publicly fund open discussion space on the Internet

If you are not paying for it, you're not the customer you're the product being sold.
(Image credit: pshab)

 

Our society already funds roads, schools, libraries, community centres and other things which serve the public good. Why not fund a public space online, free from advertising and complicated terms of service?

The cost of such a service would be minimal compared to the overall cost of the infrastructure we currently support. It could be moderated by promoting people who have established themselves as leaders of their community.

We desparately need somewhere online where we can discuss ideas openly without being the product, without being advertised to non-stop. If this Internet thing is to be something with which we promote and discuss democracy, then we need some democratic space set up within it.

Twitter, Facebook, Google are useful services, but their corporate model ensures that they view you as a product and that isn't healthy for democracy.

Would it be messy? You bet, but then so is democracy.



Create open-source modular software that writes itself

Imagine a day in the future when you sit down at your terminal (or perhaps while taking a walk in the park?) and you can design your own software through a verbal user interface. Here's a story to try and explain what I mean.

While walking in the park...

You: "Computer, I would like to create a program today."

Computer: "What do you want your program to do?"

You: "I need it to process this data I'm collecting for my company and present it so that my employees will understand it."

Computer: "Do you mean the data set you collected yesterday at 2:35pm?"

You: "Yes."

Computer: "Do you want me to access the public code repository? There are some libraries there that will help."

You: "Yes, please."

Computer: "Processing, processing, processing. Done. Do you want to view your program?"

You: "Can you send it to my office so I can view it there?"

Computer: "Yes. Done."

Back at the office...

You: "Computer, bring up the program I started in the park."

Computer: "Now displaying."

You: "Okay, can you change the theme? I'd like it to be a bit more metallic. Use the Zen design principles please."

Computer: "Processing, processing, processing. Done."

You: "Hrmm. This isn't working quite as I'd like. Do you have a subroutine to allow them to edit the data at this point (points to screen) and add an overlay of the data in a visual timeline?"

Computer: "Checking public repository.... I have found a similar algorithm but it will probably need some minor changes. Would you like to use it and modify it yourself? The license allows you to use it for commercial purposes."

You: "Okay. I have a couple of hours here, I'll work on fixing that part of the code."

Computer: "Would you like to automatically share your code to the public repository?"

You: "Yes. Thank you, use the CC-BY-NC license."

 

I expect some day that most software will be mostly designed visually rather than written in text. Software libraries will exist in public repositories, and computers will assemble the code for us, rather than us assembling the code on a computer. Programmers will be more like artists, finding ways to combine algorithms and subroutines much like a painter assembling paint onto a canvas.



Create a more user friendly compiler

I was speaking with a visitor today about how I think kids learn, and the topic of programming came up. He suggested that one reason people find programming so hard to learn is that the syntax had to be exactly perfect in order to get anything to work. He said imagine if you couldn't communicate anything in a language until you had perfect syntax; you'd never learn the language!

So my response was, maybe we need to fix the compiler? What if the compiler understood poor syntax and was able to correct it to better syntax for a user (or at least offer some possible suggestions for improved syntax, with examples of the output of each version of the syntax)? Instead of a dumb compiler that needs exactly the right information entered into it, you'd have an intelligent compiler that would be able to interpret poorly written code, and still produce some sort of useful result.

This problem is often addressed by creating incredibly simple syntaxes (for example: block languages, like what exists in Scratch) but as I've noticed, students sometimes struggle to convert the block languages into text code blocks. Instead of simplifying the language, let's widen the range of acceptable syntax, while at the same time still giving some feedback to the learner.

An aside: what if we could do this in math as well?



Digital objects should include an attribution meta tag

What if every digital object (photo, learning resource, website) had an attribution metatag?

In a similar way that encryption keys are handed out by a small number of parties, digital resources could be tagged with encrypted information which can be easily matched against a database to find out who created the object, but which would be difficult (impossible?) to fake.

The objective of these attribution meta tags would not be to make content rights easier to manage (although this would be a consequence), but to act to improve the reliability of online data and resources. It would also allow for searching for resources created by individuals.

Obviously such a system would be an opt-in system.



Manufacture on demand

Consumer as designer and manufacturer

We all know the end of oil is coming, and with it, the end of cheap energy. Biofuels, alternative energies, all of these are only going to get us so far. One of the major consumers of energy on this planet is the shipping of goods across the globe. We ship supplies to one part of the globe, and then ship manufactured products back again.

Imagine if instead of having to ship goods, we could ship 3d digital models over the Internet instead, and then print these on demand. At first, products could be printed in local manufacturing plants (perhaps even on the same grounds where customers would go to pick up their orders, which would also significantly reduce warehousing needs) and supplied to local consumers, and eventually, consumers could print their own models directly, perhaps paying for licenses to create these products, or for the equipment necessary to do the production themselves (and have some licensing costs built into the cost of the equipment). Imagine an ecosystem where the consumer is the designer and manufacturer of their own products and that those products weren't limited to what capability the consumer has with typical DIY tools.

As production rose, so would production quality, and ever more intricate devices could be constructed with these machines. With the inclusion of the open source model, much of what we pay for today could be nearly free as we would just have to pay for the machines (and the energy to run them) and the supplies necessary to construct the models.



Intelligent refrigerator

Imagine you put your food into a re-usable container, but before putting it into your refrigerator, you scan it first, and when prompted, tell your refrigerator what it is (either verbally, or using text). Your refrigerator (or a small computer attached to the outside of it for "analog" refrigerators) records what you've entered into it, and the date and time you entered it. Every time you remove something from your refrigerator, you scan it on the way out, so that the refrigerator always has a record of what is inside it, and when it was placed inside it.

You could then ask your refrigerator (using voice-recognition software) what would be good to eat, and your refrigerator could also remind you that your food needs to be eaten soon. Further, if you also scanned in raw ingredients (and maybe did the same for dry goods stored in your cupboards/pantry), your refrigerator could recommend recipes. Your smartphone could have an app which was aware of the data from your refrigerator, and could act as a shopping list. Or, instead of an additional device on the refridgerator, each person who used the fridge could have the app on their phone.

I wonder how long it would take such a system to save you enough money from not wasting food so that it would be affordable?



Smart parking meters

What if parking meters were smart enough to indicate when the attached parking spot was in use, and when it was no longer in use? What if this information was available on the web (or through an app) so that anyone who was looking around for parking could pull off the road for a moment and look up some of the easiest places in the city to park?

What if this information was used to inform city planning? What if the prices of parking were dependent on how busy the surrounding area was, so that commuters were encouraged by lower prices to park in less densely packed areas of town? What if similar parking density meters were installed everywhere there was parking, even if that parking was free?



Build presentation software that makes sense

I'm tired of PowerPoint, and I find Prezi's spinning and zooming hard to follow. I'm tired of having to use third parties tools to embed websites with limited functionality so that I can embed my gizmos in my presentation. The web has been around for more than 30 years; why does today's presentation software consider it an after-thought? Why is it so difficult to use hyperlinks to link within a presentation itself?

I want presentation software that will:

  • Allow me to embed live versions of websites using whatever browser rendering software I choose.
     
  • Allow me to edit the presentation on the fly, so that I can take notes during a workshop in my presentation.
     
  • Allow my presentation to be streamed online (with audio and a webcam stream) using the same tool that I'm presenting with.
     
  • Allow me to save the state of 3rd party software and include it in my presentation. Think of what you could accomplish with your presentation if you didn't have to flip between programs all the time.
     
  • Suppress notifications from other programs. No, I don't want to know about that email I just got, and yes, I'm aware that I should have shut down my email in advance of my presentation, but I forgot, okay?
     
  • Can I ask for any webcam stream to be included in my presentation? I'd love to be able to embed a webcam stream from a person on the other side of the planet, while I take notes or share images on their behalf on my end of the conversation.
     
  • Allow me poll the audience (or embed a live chat) within my presentation itself. The audience is part of the presentation, not just a passive recipient of information, they should be included as much as possible where feasible.
     
  • Make the presentation software easy to use. We need to write more software remembering that the people on the other end may not be experts in a wide variety of software. Every time I have to teach somehow how to use software it makes me frustrated because I know it is possible to build software that is more intuitive than what currently exists.
     

I'm sure I'll come up with some more features, but this is good enough for now.



Are there multiple singularities inside the event horizon?

I was wondering in the shower today if when a star collapses into a black hole, if individual particles are "crushed" under the pressure from gravity and collapse into a singularity, and if many different particles will experience this simultaneously, would this process result in multiple singularities inside the event horizon of the black hole? Also, if an individual particle started falling toward a singularity, it would presumably cross the threshold for pressure (after which point it would itself collapse into a singularity) before it contacted the singularity.

It occurred to me that two (or more) orbiting singularities would never meet (this assumes that space-time is continuous), and so if the process of creating a black hole ended up resulting in multiple singularities inside the event horizon, these singularities would never merge. Presumably they would eventually end up in very tight orbits inside the event horizon, but even in this case, it would presumably mean that the event horizon itself wouldn't be completely spherical, (or elliptical), and that you may be able to measure this difference.



Gödel's incompleteness theorems and human self-inconsistency?

From Wikipedia:

The first incompleteness theorem states that no consistent system of axioms whose theorems can be listed by an "effective procedure" (e.g., a computer program, but it could be any sort of algorithm) is capable of proving all truths about the relations of the natural numbers (arithmetic). For any such system, there will always be statements about the natural numbers that are true, but that are unprovable within the system. The second incompleteness theorem, a corollary of the first, shows that such a system cannot demonstrate its own consistency.

My question:

Is there a relationship between Gödel's first incompleteness theorem and the ability of humans to hold seemingly self-contradictory thoughts?

In other words, has our brain been designed in such a way as to allow us to prove as much as possible about the universe, and consequently we must hold some thoughts in a contradictory fashion; we hold an inconsistent set of axioms about the world, and so we can potentially prove anything about the world (although many proofs would be invalid, but to an inconsistent system, perhaps an invalid truth is acceptable?).



Make escalators more energy efficient

People go up escalators, people go down escalators.

What if the energy potential of the people going down an escalator was used to power an escalator going up? You'd still have to add energy to the system, but there should be some way to save at least some of the energy used when the escalator carries many thousands of kilograms of people down, to help power the escalator on the up side.

Clearly this type of system would work best when the relative rates of people going up and down on the escalators are approximately equal. In many rush hour situations, this simply isn't true. However, even a modest savings of energy for a system which runs 24/7 every day of the year would be worth exploring.

Update: It seems to me that this idea is not likely to be original, and that someone has probably implemented it. Let me know if this is the case, and I'll update this post.



Modular cars

Imagine you get in your car, and drive it to the highway, where you pause for a moment to physically join with 5 or 6 other cars. Now you join the highway, which automatically moves your mini-train of cars at the fastest "safe" speed possible, before moving you off of the highway so that you can decouple from the other cars in your unit, and continue on your way to work.

There would be a few advantages of this system

  1. The total energy cost of the system would be less, since the total drag (from the wind) on the mini-trains would be less than the drag on each individual car.
     
  2. The mini-trains could run on tracks, which could provide the energy for them to move, and to recharge the batteries of the individual cars. It would help increase the range of an electric car, while simultaneously helping solve the problem of "refueling time."
     
  3. It would likely decrease the number of fatal accidents that would occur on highways. Most accidents on highways are the result of operator error, which would presumably be greatly reduced with a computer at the controls. See Google's driverless car for an existing example of automated driving.


Apply a genetic algorithm to public policy

Public policy based entirely on ideology is flawed. Our objective is often to ensure that our citizens have their needs met, but when we change our course dramatic and capriciously (as often happens after an election), we often fail our citizenry. Through the open government movement, and the open data movement, we have an opportunity to change some of this.

What if we decided on public policy based on what works, rather than our feelings about it? We could take 10 randomly selected public policies, all intended to address the same issue. Apply them as public policy to 10 randomly chosen similar jurisdictions (cities would probably have to collaborate to do this) and use the data collected from those jurisdictions to find out how effective the policies are. We would then discard all but the 3 best performing public policies, and randomly select 7 new policies to replace the ones lost, and rerun the experiment. We could tweak the three policies we've chosen (using some random variation on the various aspects of the policies).

Alternatively, once we have enough data collected from enough jurisdictions via the open data and open government movements, we could enter in all of this data into a computer, and run the policy algorithms on a simulation, rather than in the real world. At the very least, this computational approach could narrow down the field to policies which seem effective.

At the very least, the open data movement should allow us to do more effective research on public policy, but it would be interesting to see if any municipalities or governments would be open to an experiment of this kind.



Create a brick and mortar university where every course is open

What would a university look like where every course was open and accessible to any interested student?

The whole reason we'd use a brick and mortar institution is to attempt to preserve as much of the structures of universities which are vital, in my opinion, to their position in our democracies. For example, I see universities as places where people with very different ideologies meet (and often conflict) and in online institutions, I think differing world views are quite often siloed from each other.

Imagine a place where students could drop in and attend lectures, learn how to use lab equipment, and access learning materials on demand, rather than on the administrative schedule of the university. Students would pay a flat fee to attend the university, rather than paying per course. The onus would be on the student to attend classes, and as many of them as they like, and as often as they like.

Students could meet with faculty advisors who could help them chart a course through the university. They could submit assignments to an assessment centre (digitally) which could give them feedback on their thinking. Students could use the information given to them by the assessment centres to guide their learning. As the students submit assignments and demonstrate mastery of concepts or skills, they could receive digital badges indicating mastery in a certain area. Collect enough badges, and you get certification. Collect more, and you get the equivalent of a degree. If a student failed to complete a degree, they could likely still demonstrate mastery of a subset of concepts.

The pace through the university could be self-directed by the student. Instead of focusing on the "four year degree," students could focus on mastery learning, and emerge from the university based on how much they've accomplished, rather than how long they've attended.

Students could move from a course which is too difficult for them to one that is more appropriate to their background without the expensive surcharges many universities use to discourage this practice. Courses could be structured to open on continuously enrollment, and given a large enough campus, Calculus 100 could start fresh every week. If a student attempts week 1 of Calculus 100 and doesn't get it, they could try it again, perhaps with a different instructor, or with more support, instead of having to wait until the end of the semester to restart the course.

Students could transfer between similar university systems using their badges as evidence of learning, rather than transcripts. Essentially, their assessments of their learning would be their transcripts rather than uncertain standards between different instructors.

While there are obviously some issues with this idea (I can think of a half-dozen objections to it off the top of my head), I'd be interested to hear how we could extend it.



Do research on relationship between style of school and later participation in institution of Democracy

There should be research done on whether the type of school someone went to, authoritarian or collectivist, determines later participation (as measured by direct participation as a politician or indirect participation by voting) in our democracy.



Create a video instead of sending an ecard

My sister said to my mom, "We need to send an ecard to my son for his birthday." I suggested a video, and they loved the idea. We went around the room and each person said happy birthday. I then uploaded the video to Youtube, and marked it as unlisted, then sent the link to her son. I think this is a much more personal experience than one of those lame ecards... 



Using QR codes in the "real world"

QR codes, in case you don't know, are like clickable links in the real world, provided you have a smart phone with a QR reader. Here's an example of what a QR code looks like.

QR code

I have some ideas on ways these could be used in the real world (along with an accompanying short URL for those people without the QR reader).

  • Food should be labelled with a QR code link so you can look up recipes and nutritional information on every food from the supermarket.
  • Traffic tickets should have a QR code link to the exact bylaw that has been violated.
  • Advertisements should link to the product website.
  • Signposts should have QR codes leading to maps of the local area, including nearby amenities, like parks and community centres.
  • Information signs in parks should have QR code links to additional information and maps of the park.
  • IKEA-style furniture should include a QR code to the instructions on how to assemble and disassemble it.
  • All signs and text, where practical, should have QR codes leading to translations of that sign in as many languages as are available.
  • Political signs should have QR codes linking directly to an outline of their party platform.
  • Road repairs and construction sites should have QR codes linking to the project description and timeline.
  • Places where people often drown (beaches, waterfalls, etc...) should have QR codes linking to the stories about what has happened to people in the past in that area.
  • QR codes should be placed around cities near historical sites to point out the history and relevance of those historical sites.

Do you have any other ideas on how QR codes could be implemented in regular life?