Saturday, December 29, 2007

VPSLAND trouble

I purchased a new VPS for qa-site.com through VPSLAND. I've been happy with them in the past. I'd like to continue with them. But they don't seem to want my business.

I signed up on Thursday, and got 5 email notices (twice) basically saying they'd gotten my order and processed my payment.

There was some trouble initially with signing up, because it wouldn't let me sign up with my existing account. That may be my fault. I may not have had the right username or password. Okay, in the spirit of getting things done, I signed up for a new account, using my business credit card. And got the aformentioned notices that everything was fine.

But I never got any notice of being provisioned. I never got an IP address and password to log in. I wrote VPSLAND a kind note asking how long it takes to provision, and by the way, I have another account with them, can I combine them?

I got back several evasive responses in which they finally said my order had been deleted as suspected fraud. Now realize, I would have never even learned of this if I hadn't prodded them. So apparently their policy was to silently discard orders that they think might be fraud. To be fair, they claimed in the support email that the card had been refunded, but though I received 5 notifications (twice) that it had been billed, I have yet to receive any official notification that it's been refunded. I don't see anything on my card statement yet.

Not that I want it refunded. I'd much prefer the service, as I've been quite happy with VPSLAND in the past. And I'd really like to get started on QA-SITE. As of last night I'd corresponded with VPSLAND support several times attempting to figure out just what happened and what I can do to help correct the problem. Finally I received notice that it was "escalated."

I don't know what could have triggered a "suspected fraud" other than if they logged my IP Address it would show that I am nowhere near the zip code where my credit card bill is sent. It goes to Bellevue, Washington and I'm living in Ecuador. Okay, whatever. They have a right to determine what they believe might be fraud, and decide what risks they are willing to take. I'd rather there were more vendors more cautious out there on the internet, and with pressure, maybe the credit card companies could come up with a more reliable system.

But the lack of professionalism in notifying me, the ambiguity of the responses, and the "escalation" to what appears to be a black hole (to be fair, it's been less than 24 hours) are disheartening.

Apparently, the real problem is that VPSLAND has "upgraded" their billing system, and possibly my existing account has been lost in the transition. Fine, we all make mistakes. But I just want my new account working. We can sort out billing irregularities, consolidate my accounts, etc. later.

Tell me why I was suspected of fraud and what I can do to remedy it. If it's not possible, fine, I'll take my business elsewhere, but I'd really rather stay.

Moving on to the next phase -- QA Site

This past week I've been procrastinating. I have the One-Shore.com website (sort of) complete. It's good enough for now. It's untested on older browsers (including IE 6) and it's not the prettiest thing, and the copy is terrible. But it's there. I have what I want, it just needs edited.

Now the thing to do is get a working QA Site (a demo at least.) I've been putting it off. To be fair, Christmas has intervened. I decided about a week ago that I should do it like a real project - from concept, to proposal, to requirements, schedule, budget, on down to deployment. At that point I got lost in the process. After all, part of what I want to do is identify (or build) tools to help me do that sort of thing.

Speaking of which, something else I could be doing when I'm procrastinating is writing blog posts and wiki entries on tools and techniques.

I'm suffering from paralysis on what frameworks and tools to use as well. Should I use a project management suite like dotProject or keep it lightweight? Should I use bugzilla or trac? Should I use django, rails, php (which php framework), or java (which java framework)? Should I write my own framework (in which language?) Which tools should I promote? Should I write my own test case tool? How much should I do up front -- dashboard, web services, virtual appliance?
Should I be spending time looking for customers? Where?

Stuff like that. I need discipline. I need scoping. So that's what I'm going to do. Treat it like I would any other project. Only I'm the CEO, graphic designer, copy writer, developer, tester, project manager, sysadmin, accountant, and consultant.

I'll start with ONE RFP. Written by myself. I started to say "a series of RPFs" but then changed that. Now I'm changing it again. I'll write two. One as a potential perfect customer (knowing what I want to build.) And another as an internal RFP to implement that proposed solution. A "concept" document will proceed the internal RFP.

And then I'll do scoping. I'll come up with a list of features, and then pick the ones I can implement at first. That will (hopefully) be based on the fictional customer's RFP, but with an eye towards expansion to meet future functionality.

The next step is a project plan. How am I going to implement it? What tools am I going to use? It's okay if I don't like what I choose. After a month (or three), I can change. I'll give myself a schedule, and a budget.

After that, then is the design. I'll decide architecture and requirements. I'll document them according to my project plan. If my plan says word docs on a local file, fine. If it says dotProject, or a wiki, fine. I can change it. But try one and stick to it for a month. If I decide django's for sucks, or I really want to build my own PHP framework, fine -- but stick with something. Get a 1.0 out there. Make it a really small 1.0 There's always 2.0.

Plan monthly or quarterly. I think eventually quarterly will be a better fit. But when I'm by myself, monthly is fine. There will be a lot of rapid changes in tools, process, design, features. Release weekly or more. Document it, blog it.

There. Now I'm off to write my concept and fictional RFP. And read a bit more about writing proposals. That's what I'm doing today.

Tuesday, December 18, 2007

Blogs, Forum, Wiki and nav links complete and RESTful on oneshore.com

The One Shore blogs are set up and working. With the correct URLs. As are the forums and wiki. And the about, services, and contact pages. All the menu links work (except demo) as well as a few extra. They are RESTful and pretty (mostly) and are bookmarkable and seachable. They have content. The wiki still has a lot of subjects to fill in, however. http://one-shore.com and http://www.one-shore.com behave the same. They are all under the same document root (through aliases) so migrating from dev->test->prod shouldn't be as much work. VirtualHosts for wiki, forum, blogs, and demo exist but have been deprecated. I'm not sure I like that, but based on Kelsey's opinion I put them under. It does make navigation cleaner, because you can go from http://www.one-shore.com/blogs/company to http://www.one-shore.com/about/one-shore by just editing the path, without messing with the hostname. This loses the independent logging and (easier) access restrictions (and ssl) that virtual hosts have. We'll see.

So here's a quick site map:

http://one-shore.com == http://www.one-shore.com
http://one-shore.com/about
http://one-shore.com/about/one-shore
http://one-shore.com/about/aaron-evans
http://one-shore.com/blogs/company
http://one-shore.com/blogs/technology
http://one-shore.com/blogs/news
http://one-shore.com/blogs/work
http://one-shore.com/wiki
http://one-shore.com/wiki/tools
http://one-shore.com/wiki/qa
http://one-shore.com/wiki/development
http://one-shore.com/wiki/pm
http://one-shore.com/wiki/biz
http://one-shore.com/forum
http://one-shore.com/forum/f2-Shore.html
http://one-shore.com/forum/f15-Main-Support-Forum.html
http://one-shore.com/forum/f18-Tools.html
http://one-shore.com/forum/f20-Techniques.html
http://one-shore.com/demos
http://demo.one-shore.com/bugzilla
http://demo.one-shore.com/mantis
http://demo.one-shore.com/trac
http://demo.one-shore.com/qatraq
http://demo.one-shore.com/testopia
http://demo.one-shore.com/docuwiki
http://demo.one-shore.com/knowledgetree
http://one-shore.com/services
http://one-shore.com/services/qa-site
http://one-shore.com/services/consulting
http://one-shore.com/services/staffing
http://one-shore.com/services/web_development
http://one-shore.com/contact
http://one-shore.com/contact/sales
http://one-shore.com/contact/sales/qa-site
http://one-shore.com/contact/support
http://one-shore.com/contact/careers
http://one-shore.com/contact/investors
http://one-shore.com/contact/partners

Also the following external links:
http://demo.qa-site.com/
http://fijiaaron.wordpress.com
http://fijiaaron.blogspot.com
http://boneshore.runboard.com/ == http://www.runboard.com/boneshore
http://bqasite.runboard.com/ == http://www.runboard.com/bqasite

Plus lots of tools in the wiki, and more forum pages. As you can see, the forum URLs aren't the best. Getting it merely took a tedious series of cut and paste steps from a tutorial on adminpicks.com Let me just say, punBB is spaghetti and I salute the brave soul who created the patch. Actually, a patch wouldn't have worked because there's been some change since then.

So now my site is structually complete, and restful, it's time for me to get some rest, and then get down to the real work. Plus, there's going to need to be some backporting because I did a lot of stuff on the fly in production, and I don't have it mirrored in dev. Like the nav links, I think. And any blog, wiki, or forum content. And I still need to test the contact forms.

Wednesday, December 12, 2007

Site and Business progressing

Things are starting to come together.

The one-shore.com website is starting to get fleshed out. Yesterday I got the wiki (dokuwiki) installed and created all the tools links. Today I got the forum (punBB) installed and created categories.

The wiki is now more up to date than the tools links. I still need to enable rewrite on the wiki and give it one shore branding (colors, logo, and nav links to return to the rest of the site.) I also want to add the tools links to the side for easy navigation, as well as a link cloud, by most visited, and post info on the home page such as most popular, and latest updates.

The forum is fully branded with a bevy of sample categories and forums. I think I need to notch it down and just make a few major categories. One Shore, Tools, QA Site, Support, perhaps combining the last two. It goes Category->Forum->Topic->Post --- which is one more level than I anticipated creating it. Also, it seems that all the way down to topics, only the administrator can post. I'd like registered members to create topics, for things like adding a tool or posting a support question.

Multiple blogs are available on dev, but unbranded as yet. I may continue to use my wordpress.com and blogspot.com blogs for now, because it provides an offsite location and the possibility that someone may stumble upon it. Eventually I may mirror locally or migrate.

I also created forums on runboard.com, which offers an off-site location, but may be wasted space. It will be a good back up if I have to bring my own forums down.

Yesterday I setup a paypal account so I can receive payments through that. Today I got a skypein number: 206-801-1701, so I can receive calls from the US easier. Only sound (and hence skype) doesn't work on my computer, at least since "upgrading" to Vista Ultimate (it swears there are no sound devices) from Vista Home --so I will have to use Kelsey's for it. I think I may want to go with TalkPlus eventually.

Skypein is $18 for 3 months. It's a good number (though the geek in me wanted 1734) and I'd hate to change it if I start to depend on it. Talkplus is $6.99/month plus 11 cents a minute and can ring my land or cell number here in Ecuador.

The deciding reason I got a number is because I sent an email to be listed on bugzilla's paid support. I also listed as a user. And as a user of Mantis (I use mantis for the one-shore site development and Bugzilla for the qa-site dashboard and integration.) I also have demos of both, and will support either for customer QA sites. I also made a note on Dokuwiki about using them, and emailed Knowledgetree about using their product. Knowledgetree told me about sourceforge, and I registered on there, though I need to look and see what tools I support are on Sourceforge and add that to my sourceforge market profile. I don't think bugzilla or dokuwiki are.

Tomorrow I hope to fix all the links and get the about, contact, and services pages finally up.

I will be visiting the computer school at San Blas square hopefully this week and eventually the technical college looking for people with good english and computer skills looking to join one-shore. I'll also try to network with people online and contact open source project leaders, and maybe company like Knowledgetree, but also, for instance, Atlassian. Crowd is staring to look very appealing to me, though I want to have the option of java-free VPS accounts for lightweight users.

I'l post on craigslist, guru, and look for other places soon. I'm probably not willing to cold call or spam businesses, but need to find out how to talk to someone who might really be interested.

Thursday, November 22, 2007

Code for corners

By the way, here's the code for the rounded corners I'm using:

.outer {display:block;}
.outer *{
display:block;
height:1px;
overflow:hidden;
font-size:.01em;
background:#DDDDDD;
}
.outer1 {
margin-left: 3px;
margin-right: 3px;
padding-right: 1px;
padding-left: 1px;
border-left: 1px solid #686868;
border-right: 1px solid #686868;
background:#aaaaaa;
}
.outer2 {
margin-left: 1px;
margin-right: 1px;
padding-right: 1px;
padding-left: 1px;
border-left: 1px solid #252525;
border-right: 1px solid #252525;
background:#b6b6b6;
}
.outer3 {
margin-left:1px;
margin-right:1px;
border-left:1px solid #b6b6b6;
border-right:1px solid #b6b6b6;;
}
.outer4 {
border-left: 1px solid #686868;
border-right: 1px solid #686868;
}
.outer5 {
border-left: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
}
.outerfg {background-color: #DDDDDD;}



.inner {display:block}
.inner *{
display:block;
height:1px;
overflow:hidden;
font-size:.01em;
background:#111111;
}
.inner1 {
margin-left:3px;
margin-right:3px;
padding-left:1px;
padding-right:1px;
border-left:1px solid #8e8e8e;
border-right:1px solid #8e8e8e;
background:#484848;
}
.inner2 {
margin-left:1px;
margin-right:1px;
padding-right:1px;
padding-left:1px;
border-left:1px solid #d7d7d7;
border-right:1px solid #d7d7d7;
background:#3a3a3a;
}
.inner3{
margin-left:1px;
margin-right:1px;
border-left:1px solid #3a3a3a;
border-right:1px solid #3a3a3a;
}
.inner4{
border-left:1px solid #8e8e8e;
border-right:1px solid #8e8e8e;
}
.inner5{
border-left:1px solid #484848;
border-right:1px solid #484848;
}
.innerfg{background:#111111;}



Thanks alot to the guys who created Nifty and Spiffy corners. Alessandro Fulciniti & Greg Johnson and everyone else who shares code and ideas. That's what it's all about.



Site design

I'm working on a site for one-shore, and have wasted a few days on design, but I don't know if I like it. I started with the idea of using a picture of a "shore." Here is my concept drawing:



I wasted a lot of time looking through photos on stock photo sights, flickr, and google images, but couldn't find anything quite right. I looked through a bunch of my travel photos and settled on one -- a sunset somewhere in Fiji:



It's not perfect but it'll have to do for now. Alternately I'd like a wave rolling from right to left or a smooth rock beach. Maybe have a series of images rotate like banner ads.

Getting rounded corners was a nice web 2.0 touch, and I found a cool trick with CSS on SpiffyCorners.



I decided a black background works better for the image:



Putting one rounded corner div inside another gave me the outline effect here:



I discovered with relative position -2 I could get it thinner on one side, but then it'd be thicker on the other:



Finally I figured out how to get it only 3 pixels wide, by interleaving the first 2 elements of the inner rounded box with the latter:



That took a full day. Now I'm working on the layout of the rest of the page. I was so proud of my rounded corners that I wanted to use them everywhere:



But now I'm thinking less is more. Too many corners is too "cute" and I want to look more "serious."




I'm still not sure about the black background, especially since the wiki and other tools will be a major part of the site, and it will be jarring to change. Next I'll try to turn this into a wordpress theme.

Friday, November 9, 2007

One Shore in Ecuador

We've managed to move to Ecuador and are settling in. I have an iffy internet connection which works about 75% of the time. It's usually fine except can have problems using Skype or large downloads. When it doesn't work, there's usually plenty to do, though it gets frustrating if you need to look something up or send an email.

I've managed to set up a demo install of the Mantis bug tracker at http://mantis.tools.one-shore.com or http://one-shore.com/tools/mantis. I plan to set up demos of several open source tools including bugzilla (3.0 and 2.x) and Scarab (if I can get a stable JVM on a VPS account.) As well as some test authoring and project management stuff, like dotProject and phProjekt.

Eventually I will provide hosting and what I call in my notes, for lack of a better term, a QA ASP (as in Application Service Provider.) I think that term is out of vogue nowadays. The big trick for me will be setting up reliable email. My number one employee or partner I'm looking for will be a good sysadmin with good experience handling email servers, backups, and security. I need a solid base to build on.

My number two wish (probably just a consultant) is for good graphic design. I know I'm not a designer, but hopefully no one will be scared away by my website's appearance. Maybe the product will speak for itself.

Tuesday, September 18, 2007

Keeping Testers Busy

There are two problems with testers that appear competing, but instinct tells me their not. One is keeping testers busy. Anyone who's spent any time testing knows the dreary periods of down time that lead (in my case, at least) to productivity hits when you need to be busy. The other is making sure testers have enough time.

The old maxim "If you fail to prepare, you plan to--" something or other is partly true, but the real problem is the busy work in testing. Testers waste a lot of time looking for bugs. They waste a lot of time in preparation, setup, and executing manual steps to get to the point where they can look for bugs. This is not a "let's automate everything" screed. The waste a lot of time planning how and where they're going to find bugs.

Wouldn't it be more efficient if they could just find the bugs and not waste all that time? Those puzzle games which you try to solve in the least number of steps comes to mind. I never really liked those games. Part of it is intuition, practice, understanding the architecture, limitations, functional ambiguity, the developers weaknesses, etc. -- that's what makes a good tester. As anything, experience is a good teacher. And part of it is planning. But most of it is just that it takes a lot of work, and if we knew the solution to the puzzle in advance, we wouldn't need to solve the puzzle (find the bugs.)

Automation can help, especially with setup and repetitive tasks. Taking away the repetitive or unvaluable tasks is great for morale, and keeps you alert so that you find more bugs. But the real problem I want to tackle is the downtime. Part of the answer to keeping testers busy is doing things like working on automation, preparing test data, gaining a further understanding of the requirements and the architecture, etc. All worthy goals.

I'm still reaching for what I want. It's more of the psychological problem. That you need to balance down time with stimulus and relaxation, as well as up time. How do I keep them -- not busy -- but productive when they're bored. Whether it's in downtime when they're surfing the web twiddling their thumbs, or crunch time when they're too busy to be productive, and too strained to be creative and find the bugs.

I had a glimmer of a thought earlier, but have lost it in the analysis. Anyway, I've made a few steps towards identifying the problem, so it's not time lost.

Tuesday, September 11, 2007

Framework Diagram







I was reading another PHP vs. RoR discussion on Slashdot and started thinking about web frameworks again. A short list of frameworks, based arbitrarily on perceived mindshare:

  • Ruby on Rails
  • Django - Python
  • TurboGears - Python
  • CakePHP
  • Symfony - PHP
  • Catalyst - Perl
  • Struts - Java
My apologies if I've left your favorite out. I'd probably like to learn more about it. In practice, I've only used two frameworks in production: Ambivalence (PHP version of Maverick) and Ruby on Rails. I liked Ambivalence for its simple MVC mapping but it is really scant on features and Rails was great for quick database entry forms.

In truth, by far the largest app I built was in VBScript on ASP. I developed on Chilisoft (then recently acquired by Sun) and deployed to IIS, and it wasn't fun, and the other developer on the project firmly followed the Model 1 architecture. From that experience, I came away with the understanding that frameworks are for those of us with smaller brains who *need* the abstraction to make sense of it. She couldn't grok my OO approach to sessions, but loved my hand written logging framework that I needed to sort through her spaghetti.

[That reminds me of the time I wrote a logger in bash...]

Actually, database handling doesn't bother me, even if I end up writing (or generating) tons of DAOs, and maybe it's time to use an ORM tool, though I don't like any of them out there, and am tempted to write my own every time I use one.

Form handling is another thing I don't really mind doing, though I admit to being pessimistic about user input and take a restrictive 90% rule on web facing apps that sucks for usability, or come-what-may attitude for intranet apps.

What I really need are business objects, and if I ever write something serious about security I need an authenication service. Probably 90% of those out there in the wild are actually worthless, even those written for "enterprise" frameworks. But in truth, 99% of the time, no one cares about your data except spammers, and to avoid them, you've got to outrun the bear and/or shark and just be a pain yourself.

[I'm not sure if that metaphor works, but most people probably won't get the reference so I won't have to defend it.]

Anyway, here's a pretty doodle, though it looks like it's not going to post well on this site. I'll try wordpress too.

First Post

So I registered the domain, one-shore.com, in 2005. On August 12, 2007 I filed with the Washington Secretary of State for a corporation named One Shore Inc. I started using aaron at one-shore.com for email shortly thereafter. Today I created a blog on Wordpress and Blogger, to see which I prefer. I've used both for personal purposes, but haven't really been happy with either. So I'll try both alternately and decide eventually. There's not much danger to posterity, but I'll probably post business ideas here and maybe someday someone will want to find out about my company.

So this is the first post. I already composed a big rambling post on wordpress and decided the textarea isn't big enough. Neither is it here. I may end up looking for an offline tool (or just use vi and then cut and paste when I visit a cybercafe.) An email based blog posting tool might be interesting too.

Anyway, I'll duplicate a bit about myself and the company here, in the possibility that it might come out better.

The company is still in the incubator, although the step of creating a corporation with a tax id and all is an important one. I had to pay real money for the business license and incorporation, and now I have to file real quarterly taxes. The first expense was registering the domain and purchasing hosting, but other than that, it has been in fallow.

The main impetus for incorporating is to be able to do corp-to-corp billing should I find consulting work that requires (or prefers) it. Of course, if I end up getting partners and giving them shares or employees with options, I'll be that much closer. Being a registered business may also help with gaining customers if I do go the route of selling products or services.

In just over 1 month I will be moving with my wife to Cuenca, Ecuador. She went down there in 2004 to volunteer with OSSO, the Ophanage Support Servives Organization. She fell in love with the country, the people, and the work, and so now we are returning.

She would like to start her own foundation and work in tandem with OSSO, but also on her own in areas that they don't specialize, particularly in providing help to teenage girls. She will teach English and do job skills training as well as developmental programs for children similar to what she does here.

I will try to make a living, or at least improve my skills while I'm down there. Of course, I'll work with her and the orphans as well, but I will concentrate on starting a business. I don't know how far I will get in the next 6 months. I may end up finding telecommute work, or start selling products, or merely find out that that's not what I want to do. But for 6 months I'll dedicate myself to it, and at the end, evaluate. Which may mean seeking investment, hiring employees, giving up, or maybe just spending some of the profits.

What I'll do first is identify 3 products or services and attempt to develop them. I'll create a web site for the business presence and other infrastructure as needed (network, email, etc.) I'll also look at 3 products or services (probably open-source tools) and look at supporting them. I'll begin with a home office but may end up renting office space. In conjunction with Kelsey teaching English, I will offer computer skills classes. I'll also try to learn Spanish. I will look for web development and testing consulting work as well as part or full time telecommute positions.
After 3 months evaluation, I will decide whether I want to pursue developing or supporting specific applications or markets, or target consulting. Optionally I will continue to pursue both.

My skills are in web application development and software quality assurance. I could pursue hosting solutions or a QA lab, but those are capital intensive. Product development or client hosted solutions are an alternative, but then support services become the liability. Employees, partners, and investors all bring their own baggage. Telecommute and consulting are time intensive and do not allow geometric growth. However, they provide steady income.

These are the decisions I will have to make. I have a pretty good idea what I want, and the answer looks like "all of them" but I will refine it after 3 months, and again after 6 months when we return from Ecuador.

I hope the toughest question will be whether we buy the house in Ecuador or the boat first.