Skip to main content

Posts

What He Sed

I recently came into possession of an ancient O'Reilly book on the utilities sed and awk , tools that I use occasionally at work but have really only scratched the surface of. There's a passage right at the start that chimed with me, and here it is as a command line call: $ echo 'Initially, using sed and awk will seem like the long way to accomplish a task. After several attempts you may conclude that the task would have been easier to do manually. Be patient. You not only have to learn how to use sed and awk but you also need to learn to recognize situations where using them pays off. As you become more proficient, you will solve problems more quickly and solve a broader range of problems. You will also begin to see opportunities to find general solutions to specific problems. There is a way of looking a a problem so you see it related to a class of problems. Then you can devise a solution that can be reused in other situations.' | sed 's/sed and awk/new t...

Only Kidding

For the last week of the recent school holidays I was off work to look after my daughters, Hazel (7) and Emma (6). Amongst other things designed to occupy time and tire them out we went to the Centre for Computing History  in Cambridge and on an adventure walk. The Centre for Computing History is a bit of a nostalgia trip for me - Atari VCS , ZX Spectrum , Gorf (sadly not playable when we went) and the rest - but my girls don't carry that baggage and for them it stands or falls on its own merits. Although we did enter and run the classic BASIC program on the BBC micros (they chose to PRINT insulting things about their dad, naturally) the two things that really got them fired up were Big Trak and an Oculus Rift headset. Big Trak is a 1980's toy moon rover with a keypad on the top for entering simple programs in a Logo-like language. The programs control forwards and backwards movement, rotation and the rover's lights. We spent ages experimenting with what they could...

Look, I am Your Father

My youngest daughter has recently started using PowerPoint at school and set herself a project of making a newspaper in it. She asked members of the family for contributions and my mum and dad went crazy (yeah, they're retired) and wrote half a dozen articles. They haven't got PowerPoint so they used Presentation  and emailed their pieces over to me as an  OpenDocument  file. I wasn't surprised that PowerPoint warned there might be problems opening it as I've seen similar things with Word. (My dad sends me all of his tech support questions as documents created in Writer  ...) So when it showed up as a single slide with masses of text, it was no big deal. I told Dad and got an email back the following day saying he'd been trying desperately to get it onto multiple slides but to no avail. Perhaps I hadn't explained well enough that I thought it was PowerPoint that had corrupted his content. But if it hadn't started as one slide, what was he doing? I ca...

Feyn Arts

The other day, I said I was reading Surely You Must Be Joking, Mr Feynman! by Richard Feynman and was captivated by it. I've finished it now, and I've pulled out a handful of quotes. I love this on bad (or as he puts it, cargo cult ) science and how strongly it relates to the way I want to perform and report testing: But there is one feature I notice that is generally missing in cargo cult science ... It's a kind of scientific integrity, a principle of scientific thought that corresponds to a kind of utter honesty - a kind of leaning over backwards. For example, if you're doing an experiment, you should report everything that you think might make it invalid - not only what you think is right about it: other causes that could possibly explain your results; and things you thought of that you've eliminated by some other experiment, and how they worked - to make sure the other fellow can tell they have been eliminated. Details that could throw d...

Having a Feyn Old Time

I've been reading Surely You're Joking Mr Feynman!  by Richard Feynman and I'm captivated by the eyes-open way his anecdotes relate how he notices things, how he feels about things, how he feels about how he feels about things, what his interest in things is, and why, and how he is constantly motivated to experiment and learn and understand, and then share his understanding. Image: Google Books

Wan Solo

I asked three reviewers for comments on a piece of writing. One a work colleague; another I've spoken to on Skype but don't know well; the third I've met only on Twitter. I got back three very different perspectives. I got back dispute, question, criticism, suggestion, cross-reference, reinforcement and praise, in varying measure. I got back the seeds of new thoughts. I got back things I can choose to take or leave. I got back the makings of a stronger piece than I would have created alone. I got to say that even though I know this can be a great way to work, and beneficial to all concerned, putting myself out there and dealing with what comes back can still be a challenge. Image:  https://flic.kr/p/8iHmo9

A CEWT Aspiration

Testing Ideas. The topic was deliberately ambiguous, not only because it reflects the situations in which we frequently work, but also to provoke and admit a wide range of discussion at the first Cambridge Exploratory Workshop on Testing . And while we got that, we also got some common themes. From my perspective, three stood out: personas analogy timing There's a wealth of thought on exploiting personas to guide testing (and even design ) by, for instance, defining a set of user profiles that represent important parts of a product's user or customer base and then trying to put yourself in their mindset, have their concerns, use the product they way they would to accomplish the aims that they would have. The use of related tools like de Bono's Six Thinking Hats has  also been well covered in testing . Across the presentations and discussion we got some interesting thoughts on what other kinds of personas could provoke ideas too: putting yourself in the position...

Trying to be CEWT

I attend, enjoy, hopefully contribute to, and get a lot from, the local tester meetups and Lean Coffee  in Cambridge. But I'd had the thought kicking around for a long time that I'd like to try a peer workshop inspired by MEWT , DEWT , LEWT and the like. I finally asked a few others, including the local meetup organisers, and got mostly positive noises, so I decided to give it a go. I wrote a short statement to frame the idea, based on LEWT's: CEWT ( Cambirdge Exploratory Workshop on Testing ) is an exploratory peer workshop. We take the view that discussions are more interesting than lectures. We enjoy diverse ideas, and limit some activities in order to work with more ideas. and proposed a mission for an initial attempt to validate it locally on a small scale. Other local testers helped to refine the details in usual the testing ways - you know: criticism, questions, thought experiments, challenges, comparisons, mockery and the rest - and a list of potential at...

Pizza Chants

So my wife caught me giggling to myself in the kitchen. Why? I'd just seen a really corny pun on peace and peas . It wasn't the "classic" above  but it was the same kind of thing. In fact, it wasn't the joke itself that had caused me to crack my face at all, but the thoughts spurred from the desire to make a better one from the same phonetic premise. The first thing I come up with is: Give Pisa chance This slight variation on the well-known punchline is a plausible sentence but to make it work as a joke I need a context that can produce it. I'm working backwards from a result to look for some setup in which it is coherent: Did you know that casinos are illegal in some parts of Italy? Apparently a bunch of gamblers held a candlelit protest overnight.  They were singing "All we are saying is give Pisa chance." This is also a testing pattern. When you're looking at responses from a system, a useful approach to finding potential issue...

Screen Test

Screen  is a godsend for those of us who work at the command line on Linux servers. It provides a way to persist session state across connections to the server and to run multiple terminals in parallel from within in one application. If you've ever suffered from dropped connections to the server killing your session and all of your running applications, or ever wanted to kick off long-running test code at work before you leave, peek at it when you get home and then pick it up again in the morning as if you'd never been away, or run multiple  PuTTY  sessions on the same server and got lost in a whirlwind of windows, screen is for you. I use it pretty much every day. Useful links: http://www.rackaid.com/resources/linux-screen-tutorial-and-how-to http://linux.die.net/man/1/screen http://www.computerhope.com/unix/screen.htm   Image: Wikipedia