[iframe http://www.youtube.com/embed/OhQNVLwLrk4 420 315]
Get started making websites now. This is a beginner-level video on how to get started making web pages. It begins with a template you can download and begin using now, and ends with a very simple biography page with two levels of headers and two paragraphs of text.
I decided to pull any references to my name off of the video since it’s published on YouTube, which offered a great opportunity to have more fun (with the blur tool and a Monty Python reference).
Do I hear correctly? Is that the sound of millions of IE6 voices suddenly crying out in terror and being silenced?
After spending years of griping about IE6’s staying power and lamenting Microsoft’s earlier decision to advocate against upgrading to IE7 (a decision they didn’t stick with, thankfully), Microsoft has turned a new leaf today, announcing that they will be pushing updates to IE to anyone who takes part in their Windows Update service.
I hope this is correct. Just in case, however, I think Microsoft needs a way of pulling a double-tap on IE6. I keep thinking it will return from the dead. Am I the only one?
In honor of CSEdWeek (Computer Science Education Week), I have a pledge to you all: I pledge to post a lesson plan or resource for every day of the week. I am a little behind, seeing as it’s already Tuesday, so I have some catching up to do.
Let’s start with Sunday, the first day of CSEdWeek. Since there’s no school on Sunday, I decided to turn my attention towards the usefulness of computational thinking around the home with my sock-sorting algorithm. Yes, you heard me right. Now, you can apply computational thinking to doing your laundry. But first, you might be wondering what I mean by computational thinking.
What is Computational Thinking?
Computational thinking builds on the power and limits of computing processes, whether they are executed by a human or by a machine. Computational methods and models give us the courage to solve problems and design systems that no one of us would be capable of tackling alone.
The beauty of computational thinking is that is helps us learn to use computers to solve problems or simply solve problems in any arena, such as dealing with the sock problem.
The Sock Problem
You’ve been there; I’ve been there too. Your laundry is piling high; your shirts are crushed under the weight of the three-plus loads you never bothered to fold; and now, your kids are looking for their underwear under their beds, in the laundry hamper, and anywhere but where they are supposed to be.
You head out to the laundry room, grab that pile of clothes and begin sorting. You start with the towels—they’re easy to find, easy to fold, and take up most of the bulk. Next, you find pants and shirts and go to work on them. Things are going well, in little to no time, your mountain of clothes is now more like the steppe of clothes.
You’re back is getting sore, but you plod on. You deal with t-shirts and underwear, and then, at the bottom, you see them: the socks. They lie in wait . They are the wiley clothes; in the many years you have folded laundry, you’ve never seemed to have completely folded them all. They are the smallest of the clothes, so even though they take up an eighth of the bulk of clothes, in number, they represent over half of the items in your laundry. If this weren’t bad enough, after dealing with the 30-some items of laundry, you’re still left with mis-matched socks and orphans. We’re they leftovers from a kid sleepover? Did one get lost at the last campout? Did they slip through your drier into another dimension…?
Few sober-minded laundry folders savor the thought of dealing with the socks. Socks are, after all, the dregs of laundry. Typically the last thing a person wants to do is go through this hodge podge of clothes: a sock jambalaya, as it were. Really, who in their right mind wants to go through the tedium of sifting through the 40+ socks to find their mates and return them to home base? What you need is a sock folding algorithm.
The solution takes on two phases: divide and conquer and sort and match.
Divide and Conquer
Phase one has two steps that each follow the classic, Divide and Conquer algorithm. It’s where you divide your targets in half (or thirds or quarters). By doing this, you are able to focus on no more than half of the possible outcomes at any given time. We’ll still have to deal with both halves in my sort, but this method helps you to not concern yourself with all the possiblities and focus on a manageable chunk.
With this in mind, the goal here is not to overthink.
Begin with a general sort by color: this is no time to think, this is time to quickly toss your socks into one of two (or three) piles:
- Multi-colored (this is optional, but often times necessary near the holidays)
- Feel free to add a stack for greys &/or browns (also optional)
Sort by Size: Take each of the three piles and apply one more general sort. Again, this is a quick divide and conquer sort without any thinking. The more you think, the longer and more cumbersome it becomes.
- Short Socks here you want just socks that go no higher than above the ankles
- Long Socks any sock longer than ankle length go in here
Apply a Sort to the Remaining Piles
At this point, you have 2-3 or so stacks of socks. It didn’t take long at all because you quickly divided them. Your job now is to sort each stack. There are all kinds of sorting methods, but there are two sorts worth mentioning: the bubble sort and the network sort. Some computer scientists will scoff at me for using the bubble sort, but remember, these are socks, not a table of database records.
The Bubble Sort: this is actually one of the most inefficient sorts as far as computer science goes, but in a short stack of maybe 10-20 socks, you probably won’t know the difference. Here’s how it goes. According to CSUnplugged.com
Technically, you aren’t actually sorting now. Instead you are matching socks with their mates, but the idea is the same, compare one sock to another, if it matches, fold them and pull them from the stack.
Network Sorting: in a network sort, you are applying multiple “threads” of sorting. You really need to watch the CS Unplugged Video on Sorting Networks or review the online lesson plan. Here’s how it works:
- Line all the socks from the remaining pile along the back of a couch
- Get your spouse and children (if you have them) to line up side by side starting on the left-hand side
- Each person takes a sock in front of them and compare to the person on your right.
- If they match,
- fold them.
- If they don’t match,
- check to see which of the two is smaller and put the smaller sock on the left and the larger on the right
What do we do with the left-overs?
I knew you were going to ask. This depends on your attitude. If you notice that a particular sock never seems to have a match or has a hole in it, it’s time to send it to the cleaning rag pile. If that solution does suit you—maybe you’re more the creative type—you could make a sock monkey or finger/hand puppet.
I’m sorry that my solution doesn’t sound much like computational thinking, but according to the Exploring Computer Science (ExploringCS) Curriculum…
Maybe the leftovers are a traditionally unsolvable problem by computer standards. If so, maybe it can become a Turing Test.
I’ve decided to cover H2C live in 2 formats: My Live Blog for the Outlaws and Inlaws for friends and families of our team, and a Live H2C Twitter Feed from all sorts of participants and bloggers.
Inlaws and Outlaws Live Blog of the 2011 Hood to Coast Relay
Live H2C Twitter Feed
Click a thumbnail to visit the site:
I had more participants, but I’m still waiting to see if they’ll send me the links to their sites. If I get more, I’ll post them here.
I am testing out a live blog of the 2011 Hood to Coast run for this year. The following live blog is only a test. Stay tuned for the real Hood to Coast: The Outlaws and Inlaws live blog in 2 weeks.
This post is intended for all OSU SuperQuest workshop participants, but I share the resources freely for all the world to see. I hope the notes make sense out of context.
I should make the disclaimer that I never did codify the explanation of MySQL and PHP in a PowerPoint presentation, so there is no record, other than oral tradition. If you would like an overview of MySQL and PHP, you should read the W3School’s tutorials on MySQL and PHP.
I love open source technology and generous web hosting like 000webhost.com. Because of the free webhosting provided by 000webhost.com, you can host your own fully-featured WordPress blog, for free.
“What’s the catch,” you say?
Well, there is this one catch: you will have to conduct a manual install of WordPress, but I must say, compared to some CMS manual installs (and I’m thinking of simply installing and configuring a Drupal module), WordPress is a breeze, thanks to SiteGround.com’s tutorial, titled, WordPress Manual Installation. If you follow each step carefully, you can have your site up and running in minimal time.
The main steps to a manual install is to…
- Find a free host (like 000webhost.com)
- Download the latest version of WordPress
- Use File Manager to upload and extract WordPress
- Review Instructions from Siteground.com’s article on how to install WordPress manually
- Set up a Database (just use MySQL to do it)
- Be sure to copy down the following information:
- Be sure to copy down the following information:
- Set up wp-config.php
- Run install.php
Before rushing to set it all up, you do owe it to yourself to follow the instructions on WordPress Security because there are some steps before it’s all installed you’ll want to take.