Entrian Solutions
 

Archive for June, 2008

Guess I picked the wrong month to collapse a lung

Monday, June 30th, 2008 by Richie Hindle

OK, I’m exaggerating slightly. I have a collapsed “lobe”, which is just part of a lung, but even so it’s painful and exhausting, and it’s prevented me doing as much work on Don’t Wreck My PC! as I’d have liked in the past two weeks.

The good news is that Don’t Wreck My PC! is only a tiny step away from being released, albeit without a website yet.

The bad news is that the “tiny step” is an intermittent failure on Vista. About 25% of the time, the click-proof window that it puts over the screen fails to appear. I can’t see a pattern to when it fails, and none of the shotgun debugging I’ve performed so far has revealed any clues.  It works perfectly on XP.  I’ll get to the bottom of it, but not in the next [looks at the clock] 45 minutes.

It’s amazing the little details that you discover at the “end” of even a short software project. I was under the impression that I’d finished with the exception of the Vista problem, so I switched over to my Vista environment to investigate. Then I began to notice little things that needed attention (little but often serious, like locking you out of your PC entirely if your little darling happens to minimize a window 🙂 ) and started jotting them down on the bottom of a bank statement that happened to be lying on the desk. There are now 26 issues marked on there (all ticked off, I’m happy to say!) and I need another bank statement. If anyone ever tells you they’ve “nearly finished” a piece of software, don’t believe them. They’re not even close.

Entrian Source Search 0.94 Beta

Friday, June 20th, 2008 by Richie Hindle

Entrian Source Search 0.94 Beta is out, with a pile of enhancements and fixes:

  • Added a Right-click menu, with “Copy pathame to clipboard” etc. (thanks, Adam):

    The Entrian Source Search context menu

  • Better crash reporting.
  •  Made the Status tooltip disappear when indexing finishes.
  •  Added “More / Website” and added a link to the website to the About box.
  • Added an initial ‘Dock me’ hint when the tool window starts up floating (thanks, Andrew).

30 day product challenge: The half-way point.

Sunday, June 15th, 2008 by Richie Hindle

It’s day 15 of the 30 day product challenge.. here’s how I’m doing – how about everyone else?

Jobs done (roughly one per day)

Proof of concept: Skeleton app.
Proof of concept: Prototype click-stopping code.
Proof of concept: Drag the rectangles (really basic implementation)
Proof of concept: Keyboard suppression. Testing. It all works!

Install and customise WordPress.
Write the initial blog posts.
Product name and logo.

Startup dialog to explain the workflow.
Yellow bar a la Remote Desktop.
Create / Load Template dialog.
Create, move and delete rectangles in the template.
Write some AdWords ads (for a future blog post – watch this space).

Still to do (hopefully one per day!)

Set Password and Reminder dialog / Password prompt dialog.
Load and Save of templates.
Ctrl+Alt+Delete handling.

30-day trial system.
Licensing.
Licensing (two days for this)
Test and fix on Vista (the proof of concept already works there).
License / installer / executable signing.

Homepage.
Details / Doco page.
Download page.
Contact / Helpdesk page.
Buy Now page.
Start an AdWords campaign.

July

Profit. 🙂

Drop shadows for non-rectangular windows: CS_DROPSHADOW and SetWindowRgn.

Saturday, June 14th, 2008 by Richie Hindle

Windows has the ability to add a drop-shadow to windows – you see it on menus and tooltips, and you can easily apply it to your own windows via the CS_DROPSHADOW class style.

It also supports non-rectangular windows, via the Windows API SetWindowRgn.

Today I was pleasantly surprised to see that you can combine these two features and produce irregular windows with drop shadows, like this:

top-bar-with-drop-shadow.png

It’s not every day that Windows gives me a pleasant surprise, but today was one of those days. 🙂

(I’m coding with MFC – if you’re wondering how to apply CS_DROPSHADOW to your MFC dialog, the answer is here: CodeGuru Forums: How to change the windows class name.)

Don’t Wreck My PC! – What to call the saved s?

Friday, June 13th, 2008 by Richie Hindle

Don’t Wreck My PC! puts a click-proof barrier across the screen, then lets you cut holes in it with the mouse. Your kids can click through the holes, but not elsewhere. It lets you save the way you’ve cut those holes for the next time you let your kids do whatever they’re doing.

A question: when you save, what should I call the thing you save? In Excel it would be a “workbook”. In Word, a “document”. But what about here? I have my own idea, but maybe someone can come up with something better? Here’s how the UI looks for that step (screenshot slightly shrunk):

name-the-feature.png

The “Don’t Wreck My PC!” startup screen is done. Opinions?

Tuesday, June 10th, 2008 by Richie Hindle

Don’t Wreck My PC! now has a startup screen that explains how to drive it. Does this make sense to you? Would you be scared off by it?

screenshot1.png

When you click Next, that screen animates up into a yellow bar at the top of the screen, like this:

yellow-bar2.png

(The way that transition is done makes it pretty much impossible for the user to miss the yellow bar.)

Don’t Wreck My PC! is unusual in that it can’t present a user interface most of the time – you need to be able to see the whole screen. Just showing that yellow bar when you first start it is clearly no good, hence the introduction screen. My worry is that it makes the thing appear complicated – “What, do I need to learn all this stuff before I can use it?”

All opinions, as usual, gratefully received…

Project ClickStop gets its proper name. Or does it?

Friday, June 6th, 2008 by Richie Hindle

(Codename ClickStop is my project within the 30 day product challenge. With ClickStop, you can let small children play on your PC without them damaging anything. It puts a “click-proof membrane” across areas of the screen you don’t want them to click.)

ClickStop needs a proper name. Something engaging, descriptive, appealing to parents, and clearly to do with protecting your PC, rather than protecting your kids. And the .com domain needs to be available. So how about this:

Don't Wreck My PC! - Let your kids enjoy your PC without breaking it

For parents, I think that’s very suitable. Fun, informal, memorable, descriptive. For schools, tradeshows… maybe less so. “Don’t Wreck My PC! (Enterprise Edition)”? Probably not. But I’d rather start small and target one vertical market successfully than have a product that tries to be a jack of all trades and ends up master of none.

Honest opinions are gratefully received. I’ve invested 10 minutes of thought, a few dollars for the domain, and an hours’ fun time with Paint Shop Pro so far – finding out now that it sucks badly is almost cost-free. Finding out 3 months after releasing it would be painful. Help me catch bugs early – what do you think of the name?

Note to Americans: A question for you, if you don’t mind: do you use the word “wreck” in this context? I’m British and I don’t want to pick a name that only sounds right in British English.

Note to Emmylou Harris: You’ve been in my heading singing “Meet me at the wrecking ball” ever since I thought up this name almost 24 hours ago. It’s time for you to stop now. Seriously.

The ClickStop UI: Taking a leaf from Remote Desktop’s book

Thursday, June 5th, 2008 by Richie Hindle

(Codename ClickStop is my project within the 30 day product challenge. With ClickStop, you can let small children play on your PC without them damaging anything. It puts a “click-proof membrane” across areas of the screen you don’t want them to click.)

I was thinking about the ClickStop UI, and as it turned out, so was commenter Bracken. Once ClickStop is up and running, it needs to present some sort of UI so that you can control it. But it mustn’t take up any significant amount of screen real estate, because it might get in the way of what your child is doing.

This is exactly the problem faced by Remote Desktop (and VNC, and any other remote access product). The same solution applies, as shown in this (slightly rough, forgive me) mockup:

clickstop-bar3.png

Cool. It could do the same slide-up-out-of-the-way thing that Remote Desktop does as well, but that’s probably overkill.

The 30 day product challenge: ClickStop

Thursday, June 5th, 2008 by Richie Hindle

When Sohail and Patrick proposed the 30 day product challenge, I thought “Bad timing – with Entrian Source Search only just out on Beta, I can’t get involved with this right now.” I had the perfect project already lined up, but taking that on during this Beta seemed crazy.

Well, call me crazy, but I’ve changed my mind. I’ll take on the 30-day challenge, and manage the Beta at the same time. At the very least, I’ll prove to myself if no-one else that Source Search makes me more productive. 🙂

The Product: Codename ClickStop

One of my 4-year-old daughter Jenny’s favourite toys is Paint Shop Pro. She loves to sit and paint bizarre and random pictures with it. Sadly, the moment I turn my back she commits bizarre and random acts of damage to my PC – not through malice, but through being clumsy and poorly trained. I’ve been developing Windows software for about a dozen years, and she’s got the PC into states that I wouldn’t believe possible without kernel-level hackery, just by jiggling the mouse the wrong way.

What I need is a way to allow her to click in Paint Shop Pro’s picture, and the tools and colours, but not on the taskbar, the desktop, the “Print” button, and so on.

Imagine mounting a click-proof barrier over some parts of the screen. That’s what ClickStop is – you decide which screen areas can be clicked, and which can’t. It also prevents certain keys and key combinations, like Alt+Tab, Ctrl+P, Ctrl+Alt+Delete, and the Windows key. The only way out is to enter a password.

Who needs it?

Jenny and Paint Shop Pro is just an example – any situation where you have someone who could accidentally mess up a PC is a candidate for ClickStop. Who needs it?:

  • Parents of small children, like me. But also:
  • Schools with computer labs frequented by small children
  • Companies running demo PCs at trade shows
  • Anyone with a PC in a public place (although I’m sure they’re already running a vertical solution)

(Note that I said “accidentally”. I don’t want to pitch this as a PC security product, to keep your teenage son out of your files. Your teenage son could undoubtedly break it in a heartbeat. This is for untrained, non-malicious users.)

The biggest problem I can see with this idea is that no-one knows they need it. I don’t know much about marketing, and what little I do know applies only to the internet. This will require offline marketing – parenting magazines, PC magazines, etc. Do I really want to take that on?

What’s in a name?

“ClickStop” could mean anything, and there’s no chance of getting the domain. Suggestions on a postcard (or a blog comment) for a good name would be gratefully received. Anything that doesn’t sound like an Internet Security product would be good…

Where I am

I already have a (very) early prototype of ClickStop. It’s just enough to stop Jenny wreaking havoc when my back’s turned. But it has exactly no user interface – you run it, your screen goes dark. It needs a user interface, lots of testing with different applications on different versions of Windows, and a website that somehow attracts people who didn’t know they were looking for it. Um.

PS.

As I was typing this blog post, Jenny turned 5. Happy birthday, Jenny!