My previous chart of resources to learn programming was well-received, but some people suggested additional resources. I decided I would try a new format to display more resources for learning programming. It is a map of different resources, which are ordered from left to right based on experience. You can choose a resource from each vertical, and then move to the right as you gain experience. A sample path is shown in the image. It would be interesting to see how these kind of charts can be improved to quickly display relevant information about each item. Click on the image below get a clickable image map, an SVG should be coming soon.
One consideration when choosing a programming language is the demand in the job market for people who know that language. I did some searches on different job sites to see what skills are in demand. Below are the results from Monster.com for jobs that tagged specific languages as skills. For more information, I created a Google Spreadsheet with job data from different websites.
I decided to update the Zappable Guide to Finding a Web Host. This guide is intended for a newbie who is would like to find out about different hosting options, though I think others can find helpful stuff here too. Most people just Google for information and get results based on SEO instead of what’s most helpful. While Google’s results have improved, you still won’t get a helpful review of the many different options possible. In the chart, I try to explore many different free options, and a couple of paid options too. (Note: I made some of the links into affiliate ones.)
The basic categories I explore are Static Hosting, Cloud Hosting, Cpanel hosting and regular dynamic hosting. I provide recommendations for in each category that I think are good and reliable. This chart should help people quickly find a good web host choice. If you want some more background info and specific details, see finding a web host. The chart is embedded below and a PDF is available here.
- People think all writing needs to be paragraphs, but that’s not always the best way to express something.
- What’s the Appeal of Twitter? + Idea for new platform
- At least include an outline in your article!
- Bonus: What writing can learn from programming
My recent chart on learning programming did quite well and got upvoted on Hacker News and Reddit. I realized that one chart was able to encapsulate the important information from 3 previous blog posts. This makes me think there might be too much of a bias to write content in a specific form and style with paragraphs and connecting sentences, when sometimes another form would work better. A chart or diagram can display certain information in a faster and clearer manner than long paragraphs, making the paragraphs unnecessary. Different diagrams and styles can be used for different types of information.
Ways of presenting content
|Content Format||Good for this type of content||Zappable Example||Benefits for reader||Extra stuff that get stuck in|
|Paragraphs of Text||Long connected arguments||Maybe Google and the Future of Search||Easy linear read||Connecting sentences, stylistic phrases|
|Table||Repeated categories of information||Resources to Learn Programming||Fast to reference||Certain cells just to match others in row. (Maybe use NoSQL-style instead ~)|
|Flowchart||Simple decision guide||Picking a Programming Language||Can quickly reach relevant decisions||Random Jokes|
|Outline-Style||Hierarchical content of separate points||Attempt below||Can easily skip subsections||Hopefully nothing|
Even if content doesn’t fit into a chart, it does not mean that standard paragraphs are necessary. Sometimes an Outline-style could do the trick.
Outline vs. Paragraphs
- I often start with ideas in note-form before writing a post
- Before publishing notes, need to refine and clarify ideas.
- Also includes “textification” into paragraphs, which consist of things like:
- Keeping to a writing-style (varying words, paragraph format)
- Putting in filler words to build and connect sentences
- This turns writing into nice essay, but it can obscure points for both the writer and reader
- It becomes harder for the writer to revise essay when each change affects the continuity of the sentences and paragraphs. (Maybe writers should also aim for looser coupling!)
- Certain articles (e.g. academic ones) may be so complicated, readers may feel need to create their own outline or diagram to follow it
- Notes need to be refined before being published, but they can still be kept in an outline style, with several benefits:
- Often quicker to write than figuring out how to “textify” content.
- Easier for reader to follow overall flow of argument
- Lets reader skip certain sections or examples and still follow argument (In fact, maybe the reader should be able to understand the argument heading without even reading the implementation!)
- Outline-style can be better for reader and writer, though not sure about this example
Obviously, people know that concise writing or charts are often helpful. However, I think people still feel constrained by standard style expectations. That’s why they need things like Twitter and even Powerpoint to permit them to write in shorter form.
I guess Twitter gives people an excuse to write things in short. o/wise they would feel the need to write multip P’s. 140 seems a bit xtrem
— Ariel Krakowski (@arikrak) November 28, 2011
While Twitter’s limits may be overkill in cases where you actually want to say something, the fact that its so successful shows the power of letting people get to the point. Maybe someone should create a blogging platform that enforces a posts that are concise and include a diagram, outline or chart. This could help popularize a new style of writing.
I’m not arguing for eliminating essay-style text, I just think it might be worth putting more outlines and charts within writing. Even if much of an article needs to be in paragraphs, perhaps some of it would be clearer or more effective as a chart. And more articles should come with short outlines (or diagrams) that says what their main points are. This would let people decide if they want to read it or review what it said afterwards. Why should some one need to construct their own outline or argument diagram to analyze an argument?
Charts and outlines are really just a minor step. For more challenging material, one can go beyond such static content and create more interactive content. But that’s for another post…
Note: An updated version of this chart is now available on Learneroo.com.
Free Resources For Learning a Programming Language
|Good For Kids / Game Programming||Greenfoot||Invent Your Own Computer Games||Hackety-Hack, Games: Ruby4Kids||CodeAvengers|
|Interactive Tutorial – Codecademy?||No, You can try Programr||Yes||Yes, there’s also
|More Practice and Help||CodingBat Problems||Visualize Python executing
(1st part is free)
|Use Firebug or Developer Tools.
(See Waterbear for visual coding)
|Good Free Book for Teaching Programming||How to Think Like a Computer Scientist||How to Think Like a Computer Scientist||Learn to Program
Humble Little Ruby Book
|Interactive Video Course||Intro to CompSci -
(Warning: full Stanford course)
|More Training / Bootcamps||See Local / Online colleges||See online courses or corporate PythonTraining||Most Bootcamps are for Ruby on Rails||Catalyst.
For kids: CodeHS.com