Saturday, December 08, 2007
I find his reads to be pretty good
pasted from the link above
What I Read
A grad student mailed me this morning to ask me what I read to stay on top of things. In no particular order:
* ACM Computing Surveys
* ACM Queue
* ACM SIGCSE Bulletin
* ACM SIGSOFT Software Engineering Notes
* ACM Transactions on Software Engineering and Methodology
* Communications of the ACM
* IEEE Computer
* Computer Science Education
* Computing in Science & Engineering
* Empirical Software Engineering
* IEEE Software
* IEEE Transactions on Software Engineering
* Journal of Software Maintenance and Evolution
* SIGCSE: Technical Symposium on Computer Science Education
* Software: Practice and Experience
* Adam Goucher
* Beautiful Code
* Blake Winton
* CBC | Toronto News
* CBC | World News
* Computer Science Community
* Consulting Toolsmiths - Matt Doar
* Cool Tools
* CTWatch Blog
* Daily Life in an Ivory Basement
* Daily Python-URL
* David Crow
* Diomidis D. Spinellis
* DrDobbs Portal Blog
* Google Code - Updates
* Google Summer of Code Blog
* Google Testing Blog
* Irving Reid
* Jazz Community Events
* Jazz Community News
* Joe Gregorio
* Joel on Software
* Jon Udell
* Lambda the Ultimate - Programming Languages Weblog
* Microsoft Research Publications
* O’Reilly Media, Inc. New Books
* O’Reilly Radar
* python-dev Summaries
* Safari Tech Books Online
* Schneier on Security
* ShowMeDo’s latest videos
* Strange Maps
* The Tucows Blog
* Toronto Before: A Step Into The Past
* Upcoming.org: Events Search for
* Victor Ng
* Women in Technology
This entry was
Tuesday, November 20, 2007
Have you ever looked at super creative or innovative people, and felt they are special beings blessed with gifts? Have you felt that you are not as fortunate? I used to feel this way. I have since learned that creativity is more about psychology than intellect, and there are no secrets to being creative. Actually, there is no such thing as “being more creative”, you are already a creative being.
I’m sure we can all relate to moments when we felt stuck trying to tap into our own creativity. Did you know that this block is merely your mind at work? Your mind is creating all sorts of assumptions, self-imposed constraints and self-limiting inhibitions. I have found that we can remove these assumptions just by being in the moment; start doing, and stop thinking.
Here are seven habits found in highly innovative and creative people that I’ve organized and summarized from Scott Berkun’s “the myths of innovation“.
1. Persistence - Innovation involves more than just great ideas. We need faith, hard work and a laser sharp focus for the end result to keep persisting for our vision in the face of roadblocks. We tend to see the end result of a creative idea in awe, but what we don’t see are the actions, hard work and persistence behind the scene to make the vision a reality.
“Invention is 1% inspiration, 99% perspiration“,
–Thomas A. Edison
2. Remove Self-Limiting Inhibitions - Under the spell of inhibition, we feel limited and stuck. We need to free ourselves from these mind-created constraints by removing assumptions and restrictions. This is what we refer to when we say “think outside the box”. Encourage ourselves to be open to new ideas and solutions without setting limiting beliefs. Remember, innovation is more about psychology than intellect.
3. Take Risks, Make Mistakes - I believe that part of the reason why we create self-imposed inhibition is due to our fear of failure. Expect that some ideas will fail in the process of learning. Build prototypes often, test them out on people, gather feedback, and make incremental changes. Rather than treating the mistakes as failures, think of them as experiments. “Experiment is the expected failure to deliberately learn something.” (Scott Berkun). Instead of punishing yourself for the failures, accept them, then take your newfound knowledge and put it towards finding the best solution. Live up to your goal of producing the best result, but understand you might hit roadblocks along the way.
“I have not failed. I’ve just found 10,000 ways that won’t work.”
–Thomas A. Edison
4. Escape - Our environment can and does effect how we feel. The more relaxed and calm we are internally, the more receptive we are to tap into our flowing creativity. This is why ideas sometimes come to us in the shower or while we’re alone. Each of us have different triggers to access our creative energy. I get into the ‘creative zone’ from sitting at my dining table, with a warm cup of chai, and my noise-canceling headphones. Many great thinkers go on long walks to help them solve problems. Experiment and find what works for you.
5. Writing Things Down - Many innovators and creative people keep a journal to jot down ideas and thoughts. Some keep a sketch book, scrap book, post-it notes, loose paper. They all have a method to capture their thoughts, to think on paper, to drop their inhibitions and start the creative process. Leonardo Da Vinci’s famous notebook was purchased by Bill Gates for $30.8 Million dollars.
6. Find Patterns & Create Combinations - Ideas come from other ideas. Did you know that Edison wasn’t the first one who came up with the invention of the light bulb? He was the first to build a workable carbon filament inside a glass bulb, that made light bulbs last longer. You can increase your exposure to new ideas, look for patterns and see how you can combine ideas to improve upon existing solutions.
7. Curiosity - Many innovators are just curious people who are inquisitive, and like to solve problems. Practice seeing things differently. For example, When seeing the solution to a problem, ask yourself, “What are some alternative ways to doing this?”. Ask a lot of questions and challenge the norms or existing methods.
Here are some techniques you can apply to cultivate creativity:
* Keep a Journal - Practice writing every thought, idea, and inspiration down. Practice, brainstorming and thinking on paper.
* Solve the Opposite Problem - Scott talked about this technique. The idea is to invent and brainstorm by solving the opposite problem that you are trying to solve. So, for example, if you are trying to create “The best laptop design”, then start with ideas to create “The worst laptop design”. For each idea you come up with, flip it. For example, if “heavy and clunky” is one idea for “The worst laptop design”, then flipping that might give me “light and sleek” which can be used in “The best laptop design”.
This technique works especially well when brainstorming in a group.The technique sounds so silly that people will become playful when answering. Humor brings down inhibition and encourages people to say things out aloud. People feel less insecure and more open.
* Find A Creative Environment - Find a relaxing or inspiring environment that triggers your creativity. Try different spots until you find some that really bring out the best in you. I alternate between my living room (which I have carefully decorated) and a couple of local coffee shops.
* Do something fun - If you’re stuck on something, shift your thoughts by going to do something fun and completely different. Come back to it with a fresh mind.
* Partnering - Find creative partnerships with another. New ideas can surface as a result of two forces that would not have been arrived by a single person. Brainstorm together.
* ‘Commit to Failure’ - “Commit yourself to taking enough risks that you will fail some of the time. If you’re not failing, we’re not doing something sufficiently difficult or creative.” -Scott Berkun
* Talk to Someone About It - I have found that when I try to articulate a particular problem to someone, that I’ll somehow articulate my solution, as well. When explaining my situation, I’m not expecting them to solve my problem, but rather act as a ‘bouncing board’ for ideas.
* **Plan for Roadblocks -Commit to efforts to overcome potential setbacks. It’s worthwhile to identify and have a plan for non-creative items that may inhibit creative thinking. Scott talked about the most common roadblocks people face: Loss of motivation, ran out of money, unable to convince key person.
Sunday, November 18, 2007
keywords: C++ STL programming language, C++ STL resources, C++ tricks recipes, Standard Template Library, C++ common phrases expressions idioms, C++ code snippets, C++ pitfalls traps quirks caveats, programming tricks, GNU gcc g++,