Archive for the ‘From The Lines’ Category

AWS Issues v2

From The Lines, Site Maintenance | Posted by attriel February 20th, 2012

So, the setting I have is for the “On Demand” instance, b/c that’s where the free tier is AFAICT.

But it seems like maybe it’s having some issues with the 24/7 uptime concept, b/c the other day it was mentioned that my main blog had flaked and browser was declaring “unknown!”

Well, sure enough, couldn’t ssh into the server either, weird.  All the status checks said good, but the system was definitely not responding well.  So I bounced it from their admin interface, it came back up, and has been happy for a few days now.

So, I’m guessing that it doesn’t actually like being on all the time, maybe it swaps out when it’s not being used, and eventually gets GC’d even though it’s “active”

Not sure why the status notices said clear though …

Anyway, that’s a potential issue I’ll need to figure out better before moving anything bigger over.

Server Upheaval

From The Lines | Posted by attriel December 24th, 2011

Be careful what you ask for, thats the moral here.

Months spent asking after a new server with more drivespace.  What happens?  There is no server, make do.  Can we have additional storage here? Well. … we could put you on the NAS.  GREAT!  Except we don’t know how to hook that up to anything, and that seems so tedious to figure out.  And then we wouldn’t have all these pristine unused drives!!!   OK, fine, USB?  Oh ,no, you don’t want USB.  It would be too slow!

How is NOT HAVING MY SYSTEM an improvement over “it’s too slow”???

So, we find things we can cut and trim, seriously months of this, trying to get it to fit within the specifications we were given as already available to us.  It’s not pretty, huge chunks of functionality are marked off with “there’s no space to store the data this requires, come back later”

Well, two weeks before launch, someone got a bee in their bonnet that “OMGZ!  the data isn’t on the system!  POMG!!!!” and lit a fire under people.

This led to, a week before launch, we get told that they’re giving us a new server.  Somehow they FOUND one, and it has 1.5T instead of 700G of drives.  IT’s got more memory, more HDD, everything.  It’s like two generations ahead of what we got the first time.  GREAT!  A little late, can we … NOT move the system?  Since you need time to set it up still?

Oh, no no no!  That’s not acceptable!  We need to move to the new system so all the data can be available immediately!  Oh, and since it’s so big, we’re switchign to 64bit architecture.  And recompiling all our stuff for 64bit is silly, so we’re going to upgrade everything to latest and greatest.

And it should be up by the day before launch.  We’ll move you over then.  No, there’s nothing in the dev environment.

So, seriously, we’re looking at a brand new server, with all new software versions, on a new architecture, no more than a few days before we launch.

I’m so sorry we asked for more drive space, because this is going to turn into a COMPLETE CLUSTER!

AWS issues

From The Lines, Site Maintenance | Posted by attriel November 21st, 2011

So, apparently your IP is static as long as your instance is running.

BUT! The instance hung/crashed a week or so ago, and when I restarted apparently it got a new IP!  oops.

So I finally hooked up the “Elastic IP” settings, and we’ll see if that’s static or not.

If this works for another week or two I might look into offloading more stuff.  Because honestly, the home business line is costing way more than it’s worth.  I can cut the price by half and raise the speeds by 10x …

Of Mail Servers and Usages

From The Lines | Posted by attriel April 6th, 2010

So, one thing I’m working on is rebuilding my home server.  And one of the big bits last time was I finally figured out how to virtualize email so I could run all the domains with different users, and not have to give everyone shell accounts.

Well, that system had a number of problems setting it up, and I decided to use a new one on the new box.  And I’m ~80% through that setup process, and getting into the complicated bits and spam and virus filters etc … and it occurs to me …

I went back and pulled up qmailanalog, which after a few tweaks to make it work (as an aside, djb writes some very solid systems, because instead of one program that does 10 things, he writes 10 programs that each do one specific thing.  usually limited options, frequently chosen at compile time, so there’s very little to exploit; otoh, it doesn’t get updated very often) let me see the send/receive stats for the server.

Almost all of the send is to junk addresses, bots guessing at addresses.  Most of the incoming is also to junk addresses.  I’m guessing a bunch of the former is bounces of the latter :o

Then I flipped through some of the inboxes for the users receiving mail.  It’s almost exclusively spam and virus mail (obviously the spam filters quit keeping up at some point).

So now I’m wondering … if I’m the only user receiving mail, and I can just change the few lists that still point there … maybe I should just shut the whole thing off on the new box.  Gets rid of the spam problem and any relaying/etc concerns :o  And simplifies the configuration overall :o

Missing post

From The Lines | Posted by attriel April 10th, 2009

So, apparently my post from yesterday went AWOL.  We’ll fix that in a sec.

Anyway, I was just looking for some documentation on an error.  “Inappropriate Matching”.  First off, that just makes me think it’s a game of Memory(tm) but with XXX pics instead of cows and sheep … *shudder*

Second, during my travels, I discovered this gem of advice:

Yes, carefully read the README file and also the other README file

In the words of Lightning McQueen — Thank you.  That is SPECTACULAR advice.  Thank you..

Inequality Assurants

From The Lines | Posted by attriel January 6th, 2009

When the dev team sends an app to the QA team and gives them a list of QA tests to run … they might be forgiven for expecting the QA team to run the aforementioned tests.  In a reasonably prompt manner.  Such as: if the app is to deploy in a month, the QA could be done in that month.

And if the QA team wants to take that month of open-endedness to test some new QA tool or process or whatever, then perhaps the QA lead should tell someone on the QA team to do something with it.

And when dev asks after 3 weeks about progress, don’t start blowing smoke up their skirt about how it was given out and the person just didn’t recognize the name of the app when the QA appointee has stated that he doesn’t have anything in queue …

*sigh*

Slow week …

From The Lines | Posted by attriel December 29th, 2008

So, this is what we call a slow week.

No one above lower-management is in (and hasn’t been in since last week) … there’s no new work coming in, plenty of time for everyone to catch up on old tasks …

So I walked through my list of open tasks … deployed, deployed, deployed, deployed, deployed, waiting for feedback, waiting for feedback, in testing for the QA team, waiting for feedback, waiting for user response on whether to proceed, waiting on direction on what this cryptic task title MEANS …

well, hell.

Short Post

From The Lines | Posted by attriel December 17th, 2008

Tired and heading for bed, but finished the QA writeout today.  Found (and fixed) a slew of issues during that process, so I SUPPOSE it was good :)

Final tally was ~110.  Would have been more like 125, but by the time I finished the grouping with 40 tests I had lost what little enthusiasm I might have had, and so the following tests are somewhat …. less exhaustive :/

Going to try to find my notebook and notes for the DES example.  AGAIN.  Which means I’ll probably write about NIST’s SHA-3 stuff in the meantime … Or more code follies :)

When QA qAttacks!

From The Lines, Programming | Posted by attriel December 9th, 2008

So, we’re working on conjoining our quick development and structured development groups, at work.

First off, to define those …

Quick Development
I intentionally renamed this after initially calling it “rapid development” because RD is a defined methodology of development, which isn’t what I’m talking about. QD is, if you will, just development of scripts and small applications that consistently need a short turnaround. Get the project Monday, and if it’s a big project maybe get until the following Monday. But frequently of the “we need this by noon” variety. Small things, change this text, whip up something that provides the user with XYZ, etc.
Structured Development
The SD team, on the other hand, gets requirements, builds design documents, has a QA team associated with them, and frequently can get 6-12 months for a significant update.

Now, I’m not saying that the SD team doesn’t get “uh oh! the code in this app is wrong, it needs to be fixed before anyone goes home tonight!” issues (Error Reports, they get a high priority), and QD gets some tasks that take months, like completely changing how the system works. But QD is much less formalized and closer to “whoever reads their email first grabs whatever’s come in” in the morning, while SD has weekly meetings to assign out new tasks. Because no one expects them to be done immediately anyway, a few days here and there doesn’t slip the deadline any

But, as I said, they’re trying to conjoin the two teams. Which makes sense, why have two sets of developers? Except it’s running into some problems. First of all, the two teams use entirely different programming tools, in general. Java and PHP share little in common. Second, the mindsets are drastically different “I wonder if anything is on fire?” vs “What is on fire now?”. And then there’s the QA process. QD does their QA by internal testing. Usually the developer runs some tests based on vague commandments in the requirements. And if you ask for guidance, what you get is “Click around and make sure everything works.”

Now with QD expected to use QA for testing, we’re having to document our QA tests. And most of our tests are either vague (“I clicked a few things and nothing exploded”) or non-existent (“They said to change this to do X, now it does X”). This has led to some amusing issues of late.

On one project, we were asked to write a script that generates an email and lists the records matching X and Y. So we wrote the script, working with the people who needed the email to make sure we were matching X and Y correctly. When the script was done, we had them tell us that the email was correct and matched what they wanted. Then we had to send it to QA. Uh? OK. Here’s the script. Testing procedures? You run it. What’s the output supposed to be? Ask the people who want it, or I can give you the output from the last test I did and you can make sure it still matches itself … You want to test the automated execution of the script? But that not working is user, not coding, error! *sigh*

The other I’m still working on. This literally had directions of “Try various View links and make sure it displays the right stuff.” For my own testing I had expanded it to note the various KINDS of links to make sure I checked multiple options. I noted the various uses and the various conditions that should work or not (as in, if you change the date to before today to look something up, you can’t create a new entry in the past. Only the future. But today is OK, even before now today, as long as it’s still today. But not after 8pm, because that’s not today anymore, it’s tomorrow, but still show today … see why I needed notes?) Now I’m working on formalizing the testing for the QA team to test the latest updates.

It turns out that the set of options for just CLICKING AND LOOKING had 16 different variations. Maybe only 8, but to make sure that various links work I had to end up looking at the same generating page multiple times, but with slightly different data. Make sure that entries created by admins show up differently than entries created by users, make sure that if you choose column A and then change the date that you still get column A on the new date. Now make sure that picking column B leaves your date alone. Three views of the same page, but different tests.

I’m truly fearful of the vast number of tests for creating and editing entries. Because there are two types of entries, and each type has 3 or 4 sub-classifications. And they’ll all need to be tested. And that’s just for tests that should succeed. Then I need tests that should fail, to make sure the failure is meaningful and functional. Wheeee

Hopefully by the time this posts I’ll have finished the test listing and can fill this in with how many total tests there were in the end. But I’ll be shocked if it doesn’t clear 100. If it gets near 200, I won’t be done when this posts, because this is boring and that’d be like 40 a day … plus other projects that get higher priorities :o

Small organization …

From The Lines | Posted by attriel October 30th, 2008

So, small organizations, teams, groups, what-have-you, have some things going for them.

  • Easy communication
  • Easy to identify who to contact
  • Quick collaboration

Of course, there are some problems

  • Low overlap of work
  • Hard to pass work over for vacations
  • Easy to miss communicate something

See, it’s nice that we have 2.5 devs on our team.  Technically two, but there’s a third dev in our “group” who sometimes helps even though he’s technically part of a different project.  They just only have something for him ~25% of the time, so he fills in some downtime with working with us.  When a task comes in, whichever of us has the most detailed knowledge of the area of code involved gets that task, or at least balanced against their workload.  If they have a big or time-sensitive issue, then it may slide to the other dev, who then becomes that expert for the next task.

But, going on vacation?  Yeah, that’s complicated.  Because when asked “Does anyone else know this code?” the answer is, quite frankly, “No.”  Not that they can’t figure it out or understand it, but they haven’t before now.  Because they were working on their tasks.

If we had 5 or 6 devs, then there might be two of us working on any given task, so when one goes out, the other has general familiarity and may just be missing out the details of this small piece where they weren’t primary. 

For instance, I had three big code projects finishing up as I left.  One is deploying after I get back, one can wait because it still has to go through acceptance with the customer .. and the other deploys the day before we fly in … AWKWARD.

Of course, that’s nothing compared to the call I got at 3pm on my last day asking if we could deploy another project, that had been waiting on feedback for 3 or 4 months now, ASAP.  They wanted “before you leave on vacation” but THAT wasn’t happening.  It simply wasn’t on the schedule to deploy, and we have a 1-week advance policy.  But it can’t wait until I get back apparently, they promised the customer it’d be out by the end of the month … Yeah, oops, sucks to be you?

So I put together a deployment request and the release files … and told my boss about it and said “you all have fun now, y’hear? ”  Because I garauntee I’m not cancelling international flights because they’re morons :o