Showing posts with label Ideas. Show all posts
Showing posts with label Ideas. Show all posts

Proposal: extend Markdown syntax to support form elements

Markdown is a lightweight markup language that can be converted into HTML. The main inspiration behind its syntax is to copy what most people have used for years to decorate plain text emails. For example, if you emphasize a word by surrounding it with *asterisks*, you get <em>asterisks</em>. If you try to put in a page divider with a bunch of dashes ---------------, you get <hr/>. The syntax visually represents the type of HTML output you desire; in a way, Markdown is the onomatopoeia of markup languages.

Markdown was created by John Gruber and Aaron Swartz

Markdown is VERY easy to read and write, so it's a great choice for CMS, wiki and WYSIWYG use cases. GitHub and StackOverflow both make heavy use of Markdown and have created their own Markdown extensions and implementations: GitHub flavored Markdown and MarkdownSharp. I too am a fan of Markdown: I think it's perfect for formatting answers on StackOverflow, it's a slick way to support rich text formatting in Resume Builder, and in my open source projects, it's an elegant solution for readme files that are perfectly readable with or without a Markdown interpreter.

Proposal

In this blog post, I'm going to propose a small extension to the Markdown syntax: support for forms. There are a number of CMS and wiki use cases where I've wanted to allow users to create a custom form (e.g. a simple poll or event RSVP) without having to write out the full HTML for it. I even created a github project (forked from wmd) to try to implement this extension, though I've been too damn busy to get to it. Perhaps someone will be inspired by this post and help me get this thing rolling :)

Syntax

Text fields




Radio buttons




Check boxes




Drop down




Required fields




Feedback

Hopefully, merely looking at the examples above makes my proposal clear. If not, I've clearly failed, as Markdown's central goal is readability. Either way, let me know what you think in the comments. Also, feel free to fork my github project for this proposal and start hacking away!

Update: Geoff saw this post, forked my project, and implemented the proposal! Awesome work Geoff!


TaxPayers choose

A few days ago, I wrote about how hearing Sal Khan's talk as part of the LinkedIn Speaker series gave me an idea for how to take the Khan Academy to the next level. In this post, I'll talk about an idea that was inspired by another speaker at LinkedIn, Charles Best of DonorsChoose.org. If you haven't heard of DonorsChoose, here's the basic idea: public school teachers from all over the country post requests for classroom projects that need funding; visitors to the site can then pick the schools/teachers/projects they wish to support and donate money to them.


A mixed bag

DonorsChoose is a great idea that has raised $85 million and helped over 5 million students. I honestly can't think of a more important cause than education: year after year, in study after study, US students lag behind most other industrialized nations. Lack of funding undoubtedly plays a big role in this, so it's great to see DonorsChoose making some headway in this area.

Having said that, the fact that teachers need donations to do their job and that - with all due respect to the wonderful work of Charles Best - DonorsChoose has to exist at all, is downright disturbing. Think about it for a minute: the future of this country depends entirely on having a well educated population; what kind of future can we have if teachers must beg for money just to be able to do their jobs?

What if taxpayers could choose?

Dilbert.com

Part of the problem is that the average person has little say in how their tax dollars are spent. For example, when is the last time you saw a military general begging for money? In fact, the US spends more money on its military than the next 10 countries combined; the air conditioning budget for Iraq and Afghanistan alone is more than NASA's entire budget.

What if we allowed people to choose where their taxes went? Imagine a new section in your tax returns or even a government website where, if you wanted to, you could specify exactly which programs your tax dollars should go to. To be realistic, you'd probably only be allowed to control a relatively small percentage of your tax dollars, since a direct democracy at the 300 million person scale would never work.

Still, I have to wonder: would the US public choose to spend nearly as much money on the military? Would we allow our teachers to make significantly less money than other professions that require similar training and education? Would we have cut NASA's budget?

What would you choose?


Taking the Khan Academy to the next level

LinkedIn dedicates one Friday every month to an "InDay" where employees are allowed to spend time on something they are passionate about that is outside their normal day-to-day tasks. You can use the day to learn a new skill, participate in Hackday, or spend your time volunteering and helping out the community. In addition to this, guest speakers are invited as part of the LinkedIn speakers series, giving employees a chance to interact with some incredible people.

One of my favorites was an interview with Salman Khan of the Khan Academy. If you don't know who he is or what the Khan Academy is all about, you need to take the time to watch the following TED talk:


Salman Khan: let's use video to reinvent education

The idea is beautiful: invert the classroom and let students watch lectures at home - at their own pace - and reserve class time for purely teacher-student and student-student interaction. The funny thing is that this is something I've unwittingly done many times before: for example, in college, I would frequently skip (or sleep through) lectures and instead learn everything I needed on my own time (and pace) from the book/homework/projects; I would fill in any gaps in my knowledge by getting together with other students or one-on-one time with a professor or TA during office hours. I'm not sure who decided that one guy rambling for hours in front of 30+ students was the best way to teach people, but I think the Khan Academy is going to prove them wrong.

However, there seems to be one big opportunity that the Khan Academy has missed.

The Great Library

As far as I can tell, all the Khan Academy videos thus far are recorded by Sal Khan himself. With all due respect to Sal Khan and his superb work, what if we allowed other teachers to create videos for the various educational units? Imagine if teachers all over the world started submitting their own versions of Quadratic Inequalities, Scientific Notation 1, and The Chain Rule. If one video didn't make a topic "click", a student could try another one to get a different perspective on the subject. Moreover, if we let students rate these videos, the best ones would filter to the top, similar to reddit. As a secondary rating, we could even factor in the average score on the test modules after a student watches a given video to see how effective the video really was. Given enough time and enough teachers willing to record their lectures, the Khan Academy could gradually turn into a modern day equivalent of the Library of Alexandria.

The Khan Academy could become the source for the best possible instruction in the entire world on any given subject. 

Could the Khan Academy be the next "Library of Alexandria"?
The Great Masters

Think about it: chances are that the absolute best person to teach any given topic X is (a) not Sal Khan and (b) does not work in your child's school district. However, if that teacher recorded his lectures and made them available at the Khan Academy, your child would be able to learn from him, as would your grandchildren, great grand children and all future generations. If this technology was around a few hundred years ago, your child today might have been able to learn calculus from Isaac Newton or physics from Richard Feynman.

What if Richard Feynman could teach your kids?
The Internet is all about instant access to unparalleled amounts of information. The Khan Academy has made education more accessible than ever. If they allow teachers everywhere to contribute, it may become the greatest source of learning in human history.


A physical analogy for the creative thought process

As a software engineer, I tend to be very methodical in my thinking. I approach every problem by breaking it down into discrete pieces, analyzing each one in a logical fashion, and following a series of coherent steps to a solution. It's easy for me to picture my conscious, problem-solving mind as a some sort of geared device, a Rube Goldberg machine, or even a computer applying an algorithm.

But what about creative thinking? What about moments of inspiration? You’re sitting on the can and WHAM, out of nowhere, an idea hits you. There was no conscious thought process, no gears turning, nothing visible happening. It's as if creativity happens behind a curtain and when the process completes, your unconscious hands you an answer. What physical analogy could explain what happens behind this "curtain"?



When it comes to creativity, the analogy of gears and machines seems largely unsatisfying, failing to provide an explanation for both (a) the random and unpredictable aspects of creative thinking, such as how answers and ideas can just appear at any time or place and (b) the more deterministic trends, such as some people consistently being more creative than others and some situations fostering more creativity than others. Rather appropriately, a possible solution to this problem came to me in a moment of inspiration: seemingly out of nowhere, I started to think about coin flips, index cards and an interesting analogy came to mind.

Creative thinking as a deck of index cards

Imagine that you have a deck of index cards and that each card has a word or phrase on it. These cards represent the ideas and thoughts that are floating in your head. The creative thought process can then be seen as:
  1. Shuffle the index cards.
  2. Drop them on the floor. 
  3. Scan over the cards and see what sentences have formed from the random arrangement of words.
 Most of the time, the random permutations of words will be meaningless. You just have to pick up the cards and return to step 1. However, every now and then, a meaningful sentence or thought will emerge. Sometimes this will be a full solution to a problem - the "aha!" moment; other times, this will be a mere stepping stone from which you gather enough info to add or remove index cards from your deck before returning to step 1.

What I like about this analogy
  1. It cleanly explains the unpredictability of the creative thought process without resorting to any magical or divine reasoning. Sometimes the cards fall the way you want, sometimes they don't.
  2. The particular choice of cards in your deck and the way you adjust them with each iteration is a great model for why your creativity may "click" for some problems and not for others. For example, consider "linguistic equations" or "DITLOIDS" style puzzles (warning: these links are highly addictive). Most people are able to solve a few very quickly, but get stuck on the rest for a long time. This could be seen as the natural outcome of which index cards you pull into your deck as you read each problem. For example, when you see the number 26, there are very few concepts - and consequently index cards - that you would associate with that number. The size of the deck is small and it only takes a few trials before a meaningful answer emerges. On the other hand, a number like 3 has MANY possibilities, resulting in many more cards in the deck and consequently many more iterations before you stumble upon the proper permutation. 
  3. We can also explain why, even when faced with the same types of problems, you creativity may fluctuate by considering the possibility that not all the possible "index cards" of your mind are equally accessible. Depending on what you've been doing and thinking about, some words/phrases will be top of mind and readily pulled into your deck; other cards will represent concepts you haven't considered in a long time, stashed in the deep recesses of your memory, and will rarely get pulled into a deck.
  4. I've always find that increased constraints lead to increased creativity. If I'm trying to solve too big or vague of a problem, I actually find it harder to come up with ideas than when faced with a smaller and more clearly defined problem. Again, the card analogy works here: broad and vague problems would be pulling in cards from all over your mind. These would represent totally unrelated thoughts and ideas and result in permutations that are completely meaningless. On the other hand, more constrained problems would result in pulling in cards that are closely related and consequently, much more likely to form coherent thoughts when they land next to each other.
  5. Finally, the index card system has several tuning points that could account for the creativity differences between people. This could result from varying values in the total number of cards available, the number of iterations per unit time the person can do, the ability to scan cards after each iteration and recognize that a permutation has meaning or value, the skill of picking which cards to put into the deck initially and the ability to adjust the cards in the deck after each iteration.
Vegas?

If this analogy were true, it would suggest that the brain uses a Las Vegas Algorithm for creative thinking. This may also help explain why brainstorming sessions can be an effective way to get creativity going: they are a conscious way to pull in ideas and try all sorts of permutations until, hopefully, a useful one emerges. Einstein may have refused the idea that God would play dice, but perhaps, behind the curtain of our unconscious, we are just playing cards.