Cargo
I started the long walk back to the pilot room wishing again for a bicycle or something.
A robot wheeled past. Hell, I should just flag down a robot. But, of course there was a reason for not having transportation; I remembered the climb up the boat when the whores locked me out and how tiring it was. A body needs exercise and the most I was going to get on a boat with two-thirds gravity was walking.
Destiny and Tammy were in the commons with a few other women; I say "women" because these were acting halfway civilized, despite their lack of clothing.
"Done already?" Destiny asked.
"No," I sighed. "Trouble. One of the generators blew out and we're off course again. I just saw you and thought I'd say 'hi', I can't stay. Too much damned work."
"what do you have to do? How long will it take?"
"I don't know. When I get us back on course I have to see what the robots are doing with the generator."
"How bad is it?" Tammy asked. "How many generators are there?"
"Only two. I wish this was an old tub, they originally had just one fission generator and got retrofitted with fusions. If our other generator dies it's batteries.
"What then?"
"We're late. But there isn't much chance of losing both generators. We'll be okay. But speaking of generators, I gotta go." I kissed Destiny and headed to the generator.
It had cooled enough for the robots to go in to work, but was a bulkhead removed from where a human could tolerate it. I had two more engines I hadn't checked off so I inspected them. Of course, if there was anything wrong I'd have been clueless.
The repair robots said the generator was shot.
Shit.
I walked past the commons to my quarters, Destiny and Tammy weren't in there although there were a few unclothed whores. Damn, ladies, put some pants on!
Destiny and Tammy were in my living room drinking coffee. As I walked in, Destiny said "John, you're damned lucky Tammy's here."
As I'd suspected. "You're supplying the drops," I said, sitting down.
"Yeah."
"The whores would have killed us without them."
"Yeah."
"How much you got?"
"Plenty."
"Enough to get to Mars?"
"Don't worry. I know my chemistry, I know how much they need."
I said "don't give any to the bitches in confinement."
"You don't know what you're talking about. With drops they're harmless. Take them away, and well, it isn't pretty."
I was confused. "What can they do locked up?"
"They're liable to suicide."
Crap. Losing cargo is a pretty bad thing.
"Crap! Damn but I'm glad you're here. I'm going to suggest to the company that they send someone like you on all these runs."
She laughed. "The company wouldn't want to spend the money necessary. The bean counters know how much loss is acceptable."
Destiny said "I made coffee."
"Thanks, but after the day I've had I want a beer."
"I'm still trying to wake up," she said.
"Yeah, you napped for a couple of hours after you went for a stroll outside. I would have thought the oxygen would have woke you up."
"Actually it put me to sleep."
Where the hell was that robot with my beer? "Robot! Beer, damn it, are you deaf?" A robot rolled over with my beer. I'm glad this boat has the older robots. The newer ones talk, and it's annoying as hell. If I want output from the computer I'll use my fone or tablet.
Tammy said she had whores to study and excused herself. The robots made dinner and we watched some really dumb old movie from a couple hundred years ago, laughing all the way through it although they say when it was made, it was meant to be serious.
Then we went to bed. I hoped tomorrow would be less stressful. My muscles all ached from the walking and climbing, I was going to be in pain the next day.
Continues. I need to think of some other trouble that Knolls can get into. Suggestions?
Currently trying to learn how to use git and github.
http://wiki.soylentnews.org/wiki/index.php/User:Crutchy#Git.2FGitHub
For any important polls, where the result could lead to an actual change to the site, the normal poll system is insufficient. It wasn't designed for real voting, and isn't precise enough.
One easy and effective option would be to have registered users vote in the comments of a "poll" article.
For example, for the site-name, the article would list all the candidates names, and in the comment, a user could write:
soylentnews++
name2--
notarealname++
etc
Then you could read all the comments from the DB, filter out those who are anonymous, filter out those that registered after the poll opened. Then run a simple script to get a vote count. For example:
// Process all comments
foreach ($comments_array as $comment)
{// Is it a valid registered user?
if (valid_user($comment["user_id"]))
{// Process each line of the comment
$comment_lines = explode("\n", trim($comment["text"]));
foreach ($comment_lines as $this_line)
{// Does it end in ++
$cleaned_up_line_text = trim($this_line, ";.!\t\n\r\0");
$last_two_characters = substr($cleaned_up_line_text, -2);
if ($last_two_characters== "++")
{// Get the name they're voting for, make sure it's valid.
$candidate_name = trim($cleaned_up_line_text, " +");
if (valid_candidate($candidate_name))
{// Make sure this vote for this user hasn't already been cast
if (!isset($user_votes[$comment["user_id"]]) ||
!isset($user_votes[$comment["user_id"]][$candidate_name]))
{
// Remember this user has voted for this name already.
$user_votes[$comment["user_id"]][$candidate_name] = true;// Count the vote towards the total
if (!isset($candidate_votes[$candidate_name]))
$candidate_votes[$candidate_name]=1;
else $candidate_votes[$candidate_name]++;
}
}
}
}
}
}
I was busy yesterday. I wrote a Mars, Ho! chapter and posted it, and spent the rest of the day on drudgery. Specifically, getting The Paxil Diaries in print. I finally finished this morning and ordered a copy.
I don't like the price a bit. The list price is $38, if Amazon or someone sells it to you I get $2.50. If you guys want a copy it's $28.50. I need a cheaper printer. It is a fat book, though, weighing in at 347 pages. It's Twice as long as Nobots.
I mentioned before that rather than waiting until stuff turns green in town I'd found a painting I'd done as a kid that fits it perfectly. I recently remembered that there's an Escherism in it.
I'll link to the URL with the cheaper but way too high priced version after my copy arrives and I check it out to make sure I didn't screw anything up.
Now I have to finish converting it to HTML because hey, you guys don't need to spend thirty bucks. It's just there if you want something for your shelf.
Twenty years ago, I started my career in the US nuclear power industry. I had a graduate degree in nuclear engineering, much better than average IT/computer skills, a hunger to learn as much as I could about my chosen profession, and an ambition to work my way up into a position of responsibility and authority. In those early days, I loved my work so much that I almost couldn't believe I was getting paid. It was exciting and fulfilling, and I really had high hopes for the future.
Then, along the way, life happened. Everything changed, I moved a few times, and I ended up in Canada... married to a wonderful woman, and becoming a step-father to a beautiful 3-year old girl. I found a job in the Canadian nuclear power industry, but I was no longer doing the hard technical work that had characterized the first part of my career. I still retained some of the enthusiasm and ambition I'd once had, but unfortunately, that didn't last.
I enjoyed some of the work I did along the way, especially if it involved databases, analysis, and process improvement. Eventually, though, I ended up doing work that I found uninteresting and unfulfilling; necessary work, of course, but not something I can stand doing for much longer. Now I'm in my mid 40s and relatively happy in my personal life, but I know things could be better; professionally, I've stagnated. I've reached a plateau in pay and responsibility that can only be surpassed by entering management, but I no longer seem to have any real interest in ascending the corporate ladder.
So, this is my midlife nerd crisis. My brain is seriously underutilized, but I no longer seem to have any career goals that excite me. It's sad to say, but I'm more concerned about making it to retirement with a decent pension than I am about advancement and making a difference. I'm very thankful to have this job, and the long-term security it seems to provide, but I don't look forward to another 15 or 20 years of this.
If I were to check out right now, people would probably say I went with a whimper rather than a bang, and that is not something I can tolerate. I'm not necessarily looking for advice, but I could really use some inspiration. Has anyone out there experienced this? If you managed to surpass it, please tell me what you did and how it worked out. If you're currently in the same situation, tell me how you're dealing with it now and if you have any ideas on how to conquer it. If your time has come and gone, and you feel you should have done things differently, what actions would you take if you had a do-over?
(Feel free to be brutally honest. Maybe I need to get angry. Maybe I need to feel anything other than what I feel right now.)
Fusion
As I was floating back to the pilot room, Tammy was waiting outside her quarters, hanging from the doorway with one hand. "Is Destiny OK?" she said with a worried tone.
"She will be," I said. "A little anoxia." They'd warned us about anoxia in Captain's training and I'd seen it before. "She's in the infirmary getting oxygen. You can see her if you want but she was still unconscious when the robot took her."
"Thanks. I would have thought you'd have stayed with her."
"God knows I'd like nothing better, but I have to make sure we get to Mars alive. We're off course and I have to inspect the ship to make sure it isn't about to blow up or anything. Look, I gotta go," I said as I continued to the pilot room.
We were even farther off course than I'd feared. Now it was a matter of juggling speed and fuel usage to the company's specifications.
Back in the old days, way before my time, these boats weren't so automated. Crews were human rather than robot, and the Captain had to calculate all this stuff by hand, with their primitive computers helping.
Captains had to go to college back then, and some of the crew, too. The Captain had to figure out all that shit almost by hand; he needed to know calculus. Hell, I ain't even took algebra even though I could have in high school.
I made the adjustments the computer read out, and we had gravity again and were going the right way. I didn't look at what gravity was, and it was hard to tell since we'd been so heavy before weightlessness.
The empty crew's quarters were first, then cargo pens. I wondered why they call them that.
"Who is it?" a voice said at my knock. Presumably Kathy, which was the name on the doorplate.
"Captain Knolls. Ship inspection, you girls should be used to this by now."
"Yeah? You should be used to us telling you to fuck off, too."
"Door, open. I can lock you up any time I want, you know. I don't even need no excuse."
"I ain't got no drops, bitch."
I suddenly realized why they called them "pens". They were designed to house any species of animal, and a word Destiny had teased me for using came to mind.
Feral. From what I'd read of Tammy's book, some of these whores were more animal than human, especially when they didn't get their drops. It had driven Billie wild enough that she'd wound up blowing her quarters up, with her in it.
I sighed. "I hope you're lying. From what I found out I'm better off when you have them."
"Well, cough 'em up, Joe!"
I laughed, and replied "I ain't got no drops, bitch!"
I did wonder why they hadn't run out. Where were they getting them? They shouldn't have been able to get them onto the boat in the first place.
Billie's quarters were next. She, along with some fifty odd fellow cargo were confined for the duration. Of course, I just opened the door and entered, taser in hand. This would have been a "brig" back when Captains had diplomas.
The robots had done a good job, but they always did. Except for making coffee. They suck at that. But you couldn't tell that she'd almost burned to death. Well, except that her hair was really short and frizzly.
"Inspection."
"I ain't got no drops, bitch."
"Whatever," I sighed, and inspected the quarters. It was obvious she was lying, her eyes gave her away. I wondered again where the drops were coming from.
After hearing "I ain't got no drops, bitch" so many times I didn't even hear it any more I went to inspect the infirmary, the one part of the inspection I looked forward to. I wanted to see how Destiny was.
Tammy was sitting there talking with her. "John!" Destiny said. "Tammy told me you saved my life."
I blushed, and grinned sheepishly. "It's my job."
Tammy laughed. "Bullshit, any other 'cargo' wouldn't have made it. Destiny almost died, and she would have if you weren't moving so frantically. God but you're fast!"
Destiny pulled me close and kissed me. "Thanks, Johnnie," she whispered, then said in a normal voice "go ahead and finish your inspection, I should be able to go home in half an hour. I'll meet you there."
I walked back to the starboard generator and wondered why in the hell I had to do this. I mean, I don't know anything about a fusion generator. There was a stairway to get there, as the generators and engines were on the "bottom" of the boat. It was the "bottom" because the ion engines pushing against the ship pushed everything else the other way. Something about "three laws of thermoses" or something but I think I was hung over that morning's training and don't really remember. Something about actions and opposite reactions or something.
I went over the checklist and checked the first engine. These things were huge and there were a lot of them. A hell of a lot of electricity went through those things.
I had two more engines to go when an alarm went off. "Damned whores, not now!" I thought.
But it wasn't the whores, it was the port generator and I couldn't get in; the computer said it was an inferno in there. Hell, that damned thing should have shut down automatically. I pulled the breaker and there was a sort of thump. Damn. Another trip to the pilot room, we were going to be off course again.
It would have to cool before the robots could start repairing it, if it was repairable at all. Damn, if the other generator went out...
I called Destiny. "Honey, I'm really sorry but this is going to take a while."
I'm on a roll this morning. Besides this chapter I've started on a foreword; as I write this thing new ideas pop into my head and the foreword will be sort of a teaser you'll think of when you see the surprise at the end (hey, I have to give some sort of clue).
Someone said my web site was ugly so I added a <style> tag and filled out the <body> tag. Happy now?
Yesterday was beautiful and all I did was get a haircut, take Leila to lunch and spent the afternoon in Felbers' beer garden. Spring fever?
Now it's snowing. I'm staying inside today.
An idea that came to mind during talk about Soylent hosting on IRC today.
Thanks to Titanium, prospectacle, stderr, useless, swiss, FoobarBazbot and MrBluze for a lively discussion :-)
It started with:
[19:43] * crutchy wonders if a distributed service could be developed... divide the load, build in redundancy and if anyone's host goes down others will pick up the slack
Time is AEDT
The idea has been developed a little bit further since the IRC discussion.
General System
==============
- independent of DNS
- with a distributed model anyone can volunteer to host a node (no single person relied on to front hosting costs)
- system consists of a network of apache host nodes set up by volunteers willing to cover the costs of their host, and users connect to the web service using their web browser with the remote host selected by a launcher program
Host Node
=========
- not required to access web service (only for those who choose to offer to host)
- apache web server configured for web service (mysql, mod_perl, etc as required)
- must periodically execute a script (using crontab?) that requests nodelist from listed nodes and updates local nodelist as required (adds/removes based on some kind of agreement algorithm)
- must respond to nodelist requests from launchers, but can be isolated php/pl/etc script and need not be built into hosted service
- must contain scripts to synchronize data and site source code updates securely with other nodes as required (this will be the tricky bit)
Launcher
========
- user executes launcher to access web service
- no gui
- executable or source downloaded from trusted location (such as debian repository or github) along with nodelist containing one or more known host IP addresses
- purpose is to select a remote host node and open web browser pointed to selected remote host IP address
- before opening browser, a nodelist request is sent to every host in local nodelist, and local nodelist is updated in same way as server nodelist is updated (see above)
- possibly a simple settings file if required
- could be a bash script for Linux and a small Delphi or C program for Windows
On IRC there was concern expressed about security and verification of host nodes.
Since you're using a browser as a client (and all the security features that come with) and you're only receiving normal http responses (otherwise your browser would throw an error), there's only so much bad stuff a host node can do.
Worst case scenario might be that it redirects to goat.cx or some site with driveby downloads (which most browsers will block anyway).
If required a trusted network of host nodes could be formed using signed certificates (perhaps using OpenSSL).
Nodelists may not be that big since there isn't likely to be a huge number of hosts for the same service (such as SoylentNews) but if need be the list could be gzipped. As mentioned earlier, the tricky bit will be synchronizing website data and service application source code, but I don't think it is an insurmountable challenge.
edit: data could be distributed, but would need to be synchronized on all host nodes (the tricky bit mentioned above)
edit: thinking about data synchronizing... would either require modification of the service application to execute a script when data is changed (and script would do the work of sending data to other hosts) or a shell script with a loop that checks for changes to data file timestamps and if change is detected send data files to other hosts. for max efficiency it would be ideal just to post a single mysql insert/modify query whenever data changes, but that would require integration into the main application (slashcode in Soylent's case). you don't want to be sending entire database files around the place whenever there is a change. a good place to start might be to host the data on one or two high performance 'supernodes' until an improved synch system can be developed.
An important choice remains for this site. What kind of organisation will we be, practically, legally and financially?
A for-profit, shareholder corporation seems out of the question, by general consensus (correct me if I'm wrong), but other questions remain. The basic choice is this:
Will we be like a charity, a co-op, or a recreational club?
1) (Like a) Charity:
Being like a charity means operating for the public benefit. What we produce is news and englightened commentary for the benefit of the world. All our finances and operations would be geared towards this aim. All excess revenue is reinvested into the site.
2) Co-op:
A co-op is for the mutual financial benefit of individual (possibly paid) members. Three main sub-options for this exist that might be appropriate for this site:
2a) - A retailer's co-op. Members use a common organisation in order to make individual profits. For example if members used this site to display their stunning intelligence, and then put their resume or website links on their profile page so people could hire them. Maybe there are services built into the site to find someone to hire who fits your requirements.
2b) - A worker's co-operative: Employees share any excess revenue. Some revenue would go to expenses, some would be reinvested, whatever remains is shared among employees.
2c) - A buyer's co-op. We exist to get discounts, or to buy together what we can't afford separately. Maybe we're buying well-written news and analysis from professional authors. Or maybe we're bulk-buying electronics, etc, so the price-per individual can be lower.
3) A Recreational Club:
This takes membership fees to provide access to equipment, organise competitions, etc. Maybe paid members would get to use extra services, like an email account, or storage space, or their own discussion thread area, or software project hosting, or chat-rooms, etc. Non-members could still be permitted, with fewer privileges, and would have to pay-per-use for the extra services (or pay to become a member).
This is a gross simplification, but gives some idea of the options involved. Feel free to offer alternatives. So what should we be, what is our purpose, really? And what kind of a structure is required to make sure we serve that purpose, and that money doesn't end up in the wrong pockets?
Bonus question: which jurisdiction should we set ourselves up in to fulfil our mission most effectively?