Smart Contracts

Updating Solidity code and Testing a Smart Contract

Books on the Blockchain

Publica Self Publishing

Goodbye Contracting

Hello brave new old world...

Ruby-Selenium Webdriver

In under 10 Minutes

%w or %W? Secrets revealed!

Delimited Input discussed in depth.

Friday, 13 January 2012

A thought on learning

Over at the Software Testing Club I blogged about getting stuck learning coding and how it was a frustrating experience. Last night I had a good conversation with my other half about how she hits the same issues studying her accountancy course.

She described the same issues, the study seems to be making sense and then boom... a total lack of understanding about what's just been read. Flicking back to review the previous material then reading back over what's unclear doesn't help.

It's the same with me and code. I'm merrily hacking away, currently over at Code Year by Code Academy and through Brian Marick's Everyday Scripting with Ruby, then my head implodes or I run out of brain sugar or something. What I've just read no longer makes sense, in fact it didn't make any sense but clearly is meant to.

So what's the problem? We talked about if for over an hour and came to a couple of conclusions.
Issues such as limited intellect, boredom with the subject, lack of sleep, lack of a good study environment aside, we agreed the core of the problem may be two fold.

Firstly you have a unique collection of experience and current knowledge. That includes experience and knowledge about the subject being studied but also about other things that might be relevant. Studying code for example might be helped by knowing languages, chords or math (so I hear...). Studying accountancy might be helped by knowledge of business, maths, analytical techniques.

Secondly, you have the material in front of you that only has the material in it that it has in it and can only be explained in the way it's being explained.

So, you read the material and you get stuck and now you're really stuck. You now have no further context from your existing experience or knowledge to apply, that might help you make sense of the material so how can you possibly progress?

This I think is common, in that many courses assume a level of knowledge that you don't have. Therefore the material simply cannot make sense to you and you don't have any context (as above) in which to interpret it so it could make sense. You're stuck and you can go over it again as many times as you like but it wont help.

To get unstuck you need to do a few things

Practice - thereby gaining more experience which will provide greater understanding and ingrain what you're studying into your brain more fully.

Find another source - look for the subject you're stuck on somewhere else and see if the way the material is presented gives you additional understanding.

Best still...

Get a mentor - a mentor combines both of the above and you skip a lot of the steps needed to get moving again (maybe a good or bad thing but sure is quicker!)

Tuesday, 3 January 2012

Invitation - write papers, articles or blog posts with me

About once every 2 or 3 months I get what seems to be a serious approach by someone to do some collaboration with. That collaboration is usually simple enough, perhaps writing a paper or a series of blog posts together. It may be simple enough but it’s a great thing to do. I love the idea of collaborating on the research, writing, review and publication of papers with other test professionals.

But… no one and I mean NO ONE every properly follows up with their offer. There’s some initial discussion, a bouncing back and forth of ideas and then tumble-weed. I can only harass so many times. OK, I’ll cut Kashif and Zaman some slack here as discussions are technically ‘on-going’.

I do understand, there are a few reasons I can think of why papers and articles don’t get written.

Fear of scrutiny (looking stoopid)
I suspect the biggest reason people don’t write articles, papers or blog posts is the fear of peer review, critical peer review and response more importantly. We all suffer this worry, less as we get older and more gnarly sure, but it’s always still there. Let me tell you, first off don’t worry about those who would try and put your work down, secondly look for the criticism.

Do it for two reasons, one is it helps you grow as people question your thinking and understanding and you need to respond, the other is any morons trying to look smart by making smart comments soon show themselves to be the morons they are. It’s a win win for you. So get writing.

Your opinion doesn’t matter, it’s already been said.
Sure, a quick search return 100s of articles on metrics, agile, test management, tools, writing bugs, creating test data, so why bother writing yet another? Heck one you write will be less insightful and badly researched right? Well, maybe but there’s a special something that only you can bring, your unique experiences. Only you can share the from-the-wild stories you’ve experienced and the best way to write is often to tell stories and share what you learned.

What’s more there’s always a need for a new perspective on an already discussed topic. If not then websites, blogs, book publishing and YouTube would grind to a near halt. It’s never been said quite in the way you will. So get writing.

You have a topic but don’t have the answers.

I once wrote a paper called ‘Assessing the Developer / Tester Ratio’, addressing that old question. It was 10 pages of working through models based on measuring development and testing factors, project management theory of constraints, then combining them into a simple and complex model. All with the intent of assessing the required number of testers to developers. I even wrote a html/JavaScript page to do the calculations. It was awesome to the power of geek. It was also completely impractical and the end result was a recommendation the reader would better spend their time just agreeing a ratio (e.g. 4 to 1) and seeing how it worked out for them.

Was it pointless writing it and spending the time doing the research? Absolutely not, contrary to common belief you DO NOT have to have all the answers. Even a PhD thesis leaves questions unanswered. Why not research and write as far as you can and then leave it to the test community to pick up? Perfectly acceptable approach, not one expects you to be a know-it-all, so get writing.

Unt Zo… to zee challenge!
I’d like to invite anyone in the test community to collaborate on writing a paper, article or blog post.

• We’ll split the year into two month slots starting in January. So that would be Jan-Feb, Mar-Apr, May-Jun, etc. Pick a slot that works for you and we’ll get onto it.
• You can pick the topic or we’ll think of one together.
• That catch is – it needs to be a 50/50 effort, more on your side is better!

How hard can it be? What have you got to lose? Etc, etc,… :)