April 2008 - Posts
a niece finally writes after long absence, expressing an "ailment" that has elements fairly common in this family. in the human family, really. hell, i'm going through much the same thing myself, for a period that has lasted years. there's nature as well as nurture in this. evolution had its reasons.
comfort zones suck. almost literally - there's a sort of existential suction that limits movement. on the other hand, sometimes the zen thing to do is give up the struggle, and simply observe one's own behavior. what the hell, who put all those "should"s in our heads, anyway ? thinking is confusing; what is it that i actually do ? and however distasteful the answer often is, the honesty is undeniable.
and yet is-ness is only part of the total state. baggage. inertia. something to be jettisoned before it accumulates to insurmountable size.
games: i learned long ago that these were an achilles heel of mine, so i limit indulging this need to infrequent bursts. yeah, i know i'd like it, but i also know i'm better off not going there. once the habit (any habit) is broken it's best to stay away.
i never even thought to expect this:
Sun, 27 Apr 2008 00:00:00 UTC
Harry Potter and the Goblet of Fire (2005)
******
Signs of Voldemort's return emerge as Harry's (Daniel Radcliffe) friends (Rupert Grint, Emma Watson) help him prepare for a tournament with Europe's best student wizards. (Fantasy, Adventure)
so what was that nonsense last week ? i have heard that part three of the potter saga is particularly problematic for "those" people. of course, it isn't yet time for this to start, so they may still bail.
a reminder to everyone who pays attention that when working i'm pretty tied into that mindset, and will generally let various personal comm streams go - email, blog, mail, phone, whatever. trying to get my diurnal cycle back into a mainstream match, and so far it's in an odd half state - crash at 8:30, up at midnight, back to sleep at 4:30, up at 8:30. whatever works, i guess... define "works".
need to get all my online billing info off of the aol service, before they shut it down in a few days. sucks.
flowering things around the area are at their peak. best year ever for the lilac bush out back, right by the bedroom window. the dogwoods, however, are in a sorry state. even sorrier is that the evergreens are mostly dead now, and those are what gave this property its character. and finally, the sorriest state of affairs is my own total lack of maintenance of, well, anything. the grass is now longer than the depth of the last (record) local snow storm.
noticed a week or so ago that subscriptions to this weblog tripled momentarily, mainly because of the tech stuff. i took care of that with last saturday's rant - subscriptions are back to normal now ;-) of course, it's only double digit numbers in the first place.
the conference last weekend was good enough, too gray / wet / cool to get nice spring visuals on the drive, but still good to get out & around. havn't been out that way in years, and there's entire new towns that have sprung out of nowhere. as for the conference itself, the sessions pretty much confirmed my current perspectives on all kinds of things, and that has its pros & cons. haven't run into anything for a while which really gives me pause and challenges my highly critical outlook on the state of the software development industry (and related), and most practitioners thereof. too many people are too unjustifiably confident about too limited perspectives. there's almost incestuous optimism, and it's damned near embarassing.
current engagement is going well enough. discovered they had broke their website's email relay configuration, no one has been receiving email from the site for four months - and no one noticed ! and there are plenty of other head-shaking things going on around there. i like to rant. the opportunities are endless. they are really sticking it to themselves, and the numerous vendors are more than happy to oblige.
and that's it for the current events list. beyond this point there be dragons.
been taking the xo places lately:
at the conference last weekend, xo made a tiny splash. self was overshadowed by the machine, and rightly so. the clip is from a youtube video someone cobbled together. well, ok, self's knee is lookin' good too ;-) - a couple of days later i was up at four am thinking about some recent website configuration i had changed for a customer, decided it wasn't going to work quite the way it needed to. so, sitting on my couch, i pick up xo and rdesktop in to the server and make revisions to the settings. teeny tiny font sizes, but does the job.
- sitting at the neighborhood bar - yesterday ? - i happened to have xo in tow, i log on to centerim (yum'ed earlier), and instantly there's craig talkin' at me.
this thing really reaches out for wifi access points. couldn't find one from inside a customer's location, though, which is a good thing.
... or movies.
big "wtf?!" moment this evening: getting back from the conference today, i think how i will be early enough to kick back with a beer or three and catch the the third harry potter movie (prisoner of azkaban) that was advertised by abc last week during the showing of the second harry potter movie. but i forgot what city i live in. flipping over to the channel, i see:
Sun, 20 Apr 2008 00:00:00 UTC
Your Reality Checked: Floral Designer
(#810006) A corporate executive contemplates leaving her job to become a florist. (House/garden, Series)
Sun, 20 Apr 2008 01:00:00 UTC
The Insider's List With Julie Moran: Eco-Hotels
(#780016) The top 10 hotels that are ecologically-friendly. (House/garden, Cooking, Series)
Sun, 20 Apr 2008 02:00:00 UTC
Chuckwagon Cook-Off
The annual competition takes place in Ruidoso, N.M. (Special, Cooking)
proof ? hardly. but it's happened before here with this series and other flicks. you want me to believe that demand for the above garbage is higher than for a multiple academy award nominated film ?
bastards. not even so much the local station (cincinnati wcpo), but the fuckers in the community i live among. really, people, it only happens because you want it to. how fucking stupid do you think i am ? like you ?
this also especially goes for those who may not share those sentiments, but nevertheless stand by and let it happen. next time yuou hear this sort of attitude from a neighbor or coworker or whoever - challenge it.
intolerance is intolerable.
yeah. community "standards". sure, it's not like i have a right to view things on a private corporation's broadcast, and if it had never been placed on the schedule in the first place, what can i say ? but that isn't what happened, is it ? the garbage above is a local pre-emption of the national feed.
yes, y'all can do this crap and get away with it. way to go.
hard not to wonder what's been happening that's less noticeable. for that, a comparison to international programming is a start. not like that is any better in many cases.
"... i love my species. i love my species. i love my species. ..."
- taxes done at about 10pm pacific time last night. so what's the irs mean by the 15th anyway ? given geography-free webfiling, anything this side of the international dateline should work.
- the thing about 1099 work is that on tax day my bank account feels violated.
- well, some more funds will be forthcoming: will start in on some maintenance work, same old customer, on monday. probably a couple of months' worth.
- which means i need to shift my cycle back to "normal". was up & out today running errands by 9am, not too bad.
- i check mail every week or two. i mean the us postal kind. buried in there today is an auto insurance payment that bounced back - "inadequate addressing" the yellow sticker proclaims. sure enough, i forgot the street adress. doh! if it doesn't have a keyboard, i don't know how to operate it. not that having a keyboard is sufficient, just seemingly necessary. this time i use the pre-addressed envelope.
- i keep trying to find an atom publishing protocol endpoint in community server (2007); doesn't appear to have been invented. i'll have to see how cs2008 is provisioned in this respect, seeing as how it just got released. gotta wait for the bugs to flush out, though. sure, i could code my own... or just roll my own twitter aggregator / blog poster.
- why atompub ? because i want to use loudtwitter, that's why. which is the only way i'd want to use twitter, as a way of accumulating micro-posts throughout the day. friendfeed looks like a good way to track one's own stuff as well. wonder if i could hook it into arbitrary forums i post to. maybe i'd be better off rolling against this instead.
- yeah, my "history project" of five years ago is getting close to being a reality, not that i personally had anything to do with it. synchronicity in thought, but not in deed.
- dang, i was reading a book, and somehow just stopped fifty pages from the end. weather warmed up again; sitting out back & (b) sipping is the way to go.
- y'know, the xo's extended wifi range means that an unsecured access point is almost always within reach.
-
wow - if you're looking for high volume of quality reading material, try this post, and this blog. and y'know, i actually read this post's eponymous book _way_ back.
-
what many of us more mature practitioners have observed over the years; but i have seen many of those that agree become part of he problem anyway. also, from the comments, it is apparent that what's often missing is honest self-appraisal.
craig writes:
"... The basic premise of having an army is to defend your territory. ..."
um, depends on who you are. perhaps that was the intent of those who founded this country, but armies are used for all sorts of things.
also:
"... it's time to put the toy soldiers away."
nope, not yet, they're kind of in the middle of something. but i get his meaning, in the context of longer term policies. even then, if you look at what happened in the non-standing-army periods, that's not exactly a safe proposition either. not to mention, geography has far less meaning in today's world in terms of distance as protection. so some sort of established military needs maintaining, including forward deployed force projection.
now, the extent to which that is done can be varied dramatically, along with how to provision quick build-ups on an ad-hoc basis. the us's force transformation initiative in a sense does lean on the citizen militia in the form of calling up national guard & reserve units; which is the fall back short of requiring (not simply permitting) an armed populace combined with a "draft".
israel has (had?) a good model for this, where everyone is required to serve a couple of years in the military. that training needs to be in place, as well as the arms.
and nope, americans will not allow any of this. this goes back to what was wrong about the civil rights movements of the 60s, where, along with the good stuff, people also started to get some warped ideas about entitlements and the "coddle-me" attitudes necessary to the formation of a nanny state, such as we have underway now.
*sigh*. these sorts of things have a habit of self-correcting, usually in not so pleasant ways, and almost certainly with permanent damage.
so, sure, loosen up the arsenal (and i mean everything, up to and including carriers), garrison the entire country. it's not all good, but then, nothing ever is.
also, "founders": sure, it helps to have the political dialogue in this country on the correct footing (things as they were, not as people want to re-interpret them for their own purposes), but that's just it: invoking the founding fathers as if they were gods just isn't responsible, and they likely wouldn't have wanted things that way either, for exactly these reasons of reinterpretive wrangling. so, yes, the enlightenment had good ideas, still does, and so do some more modern movements. we are supposed (?) to be adapting as we move along, not shutting down in reactionary bunker mentalities (neo-con, fundamentalism, etc.). that isn't even a real possibility, regardless of the illusions so many seem to harbor, here and elsewhere. "supposed to": hell, we have no choice. but backsliding and forgetting / corrupting valuable historic lessons - shame on us.
spending some quality time with the xo lately:
- yumex ("yum install yumex", ~500kb) is a graphical yum front-end which is helpful digging through the repositories, already installed items, and available updates. still have to do something about logging my installs, though.
- yumex helped me discover that rdesktop was already installed, works like a charm accessing my windows boxes from the xo. best with the full screen option (-f). still need to set up the tools to do this sort of access in reverse.
- does this thing form mesh connections with itself sometimes ? i'm pretty sure there's no other xo around here, but it hooked up with essid "olpc-mesh", 100% connection quality. that's better than with my ap twenty feet away. i need to get this thing to do that again & share an app, see what's what.
- networking: a tip i saw - "iwconfig eth0 rate 54MB" will speed things up, assuming you have 802.11g. out of the box, xo is configured for 1MB, apparently a power saving move.
- correction to an earlier posted figure: xo is delivered with a bit over 300mb of space used, not the 200mb or so i originally thought (where'd i get that ?). so i've added a bit more than 100mb through installs & just everyday usage (logs, files, etc.).
- i posted about determining system imaging options, came across this stuff: How to (hack) customize a built for XO. there's lots more info on the olpc wiki: customizing nand images (also some info here on removing journal history and other initialization / cleaning tasks); and some more through googling for "save-nand". caveats and potential future directions in this thread: any drawbacks to using copy-nand and save-nand to install XO images. more: Backing upthe XO?
- i finally got around to getting a developer key for the box; just insurance for now.
so, y'know, i haven't done taxes, or even summarized cash flow from last year, and it's like one in the morning, so of course, being supremely rational, i decide it's time to install an http server on the olpc xo [1].
[2]
your mission
not just any server; i go for the micro_httpd. i first saw this years ago when my router coughed up 404s; apparently this is what they use on its embedded system (along with other stuff, because it apparently supports asp pages as well). and i had been familiar with acme labs from long before that. one of those grandaddy-of-the-web sites.
sure, a lot of other options are more reasonable in terms of feature & configuration flexibility, but this one was appealing for several other reasons:
- at under 200 lines of c, it can be torn apart like an old watch
- i had already downloaded it through the xo's "browse" activity - so where does it put the files ?
- binaries are not distributed, it has to be "made" locally (or is the proper past tense there "maked" ? or "'make'd" ?)
and i only really want an absolute minimum of features anyway.
part of the way this thing achieves its micro-ness is by offloading the network comms to inetd - or, in the xo's case, xinetd. more on that later.
button, button, who's got the ...
first step: where the hell is that damn thing that i downloaded anyway ? oh yeah - back to that mess of a datastore that the xo uses [3]. managed in the guise of its journal, all downloaded files (and many other things) are not stored under their original names, the names have been changed to protect the innocent hashes. thankfully, they still maintain their original type information (i could see this in thunar, but not through ftp). digging back into the journal, i could see the date of the download, so it wasn't too difficult to determine which file was which (/home/olpc/.sugar/default/datastore/store/2ced633e-7f17-4233-8ad5-a5642e6f), but this is still silly.
anyway, copied it to a working directory & changed its name to the original, and started from there.
oh, sure, using wget would make more sense, given these circumstances. i'm just following along a la "tao of xo".
go ahead, make my day app
so the instructions say "just do a make". right. well, this is an xo, there ain't no such thing. luckily, unlike the removal of cifs (module?), this is still available as an installable package. so - "yum install make".
what about a compiler ? as is well documented everywhere, all linux distros come with gcc. nope, not the xo. so - "yum install gcc". which comes with a couple extra mb in dependencies, for a total of 8mb.
finally, "make [install]".
yeah, ok, that was straightforward. sure. but well, i will be needing those tools anyway, eventually. one of the reasons for doing http this way, remember ?
con-fig-u-ra-a-tion
more instructions:
To install it, add a line like this to /etc/inetd.conf:
micro_http stream tcp nowait nobody /usr/local/sbin/micro_httpd micro_httpd dir
Make sure the path to the executable is correct, and change "dir" to be
the directory you want to serve.
Then add a line like this to /etc/services:
micro_http port/tcp #Micro HTTP server
inetd, eh ? nope - again, the xo has no such thing. something so basic to unix / linux. then again, i can see why. it has the potential to open up all kinds of security issues, and certainly these machines are not intended to provide network services. and in any case, xo's base os [4] is an adaptation of fedora, which uses xinetd. nope, that's not on the xo either. here we go again - "yum install xinetd". i think i've added more than 10mb so far.
of course, xinetd's settings are handled differently than inetd. mostly it's a straightforward translation though. here is the xinetd.conf version (only the relevant bits; well, ok, and some others):
defaults
{
log_type = SYSLOG daemon info
log_on_failure = HOST
log_on_success = PID HOST DURATION EXIT
cps = 50 10
instances = 50
per_source = 10
v6only = no
groups = yes
umask = 002
}
service http
{
disable = no
id = http
wait = no
socket_type = stream
protocol = tcp
user = olpc
server = /usr/local/sbin/micro_httpd
server_args = /
port = 80
only_from = 127.0.0.1 10.11.128.0/24
}
this is actually divided between /etc/xinetd.conf (defaults) and /etc/xinetd.d/microhttp-server; xinetd.conf has "includedir /etc/xinetd.d" as the last line. and those are really "defaults", that section is unchanged from the xinetd install.
note that i've exposed the entire system to browsing; at least, the parts that the olpc user can see. and i've contrained access to my lan (and the xo itself). assuming i don't hook up with some dhcp somewhere with the same segment configured, i should be ok.
see me, run mee-ee-ee ...
finally, i can test all this out. turns out the xinetd installation already handled the chkconfig stuff for me (runlevels 345), so "/etc/inet.d/xinetd restart", and voila. well, not really; i had some issues differentiating between underscores and hyphens in filenames, but once i got that dyslexia straightened out, http popped right up ("fuser -vn tcp 80" is one way of checking).
what does this let me do ? just a simple way to browse the filesystem, mainly. but it was also a learning experience.
time of completion: 7am ? it was light out, anyway.
observation: really, how "micro" was all that ?
i'm thinking i may want to change some of that source code to give me something other than the classic acme labs green as a directory listing page background color default, but y'know, it has its, uh, "charms".
finis
so now i have acquired a few more tools one usually finds in linux, at the cost of more used space. being such a newb at this, i still have to chase down log file usages and make sure these things are being properly limited and / or rotated. certainly don't want to suck up disk space like that. plus i need to figure out how to clean up xo's journal (i remember seeing stuff on that somewhere). also, is there a log of everything i've "yum"ed ?
yet again, i'm struck by how obtuse this whole linux thing is. in some cases, elegantly obtuse, where "they" have gone out of their way to automate really boneheaded stuff (assuming one knows the proper magic incantations), instead of shifting paradigms. well, that shift is happening anyway.
another recent musing has been that the linux community creates a huge amount of churn. no way that will ever be able to keep up with more focused efforts from players like microsoft, etc. and in fact, whenever something threatening does pop up out of the open source world, the big guys just scarf the concepts up and move on.
and that part is good. the backyard mechanics can play as much as they want, and every now and then a Good IdeaTM gets cranked out. then the big machines take it from there. no little guys, and we'd have the same old shit. but the little guy needs to get a grip: although he is the source of some innovation and it's good to have gadflies, it is not the same thing as being a player himself. yet their contribution is invaluable.
bottom line is that we need both. they are part of the same machine.
[1] what i am not doing here is creating any sort of multi-user website hosting system. that's a very different proposition best handled with other http daemons. a number of options for this target functionality are available as yum packages ("yum info *http*"). there are some good comparisons of footprints & features out there; just search. acme labs' thttpd is available. lighttpd also looks like a reasonable option. apache (httpd) looks bloated.
[2]
why this pic ? what is this pic ? it's from the missouri botanical garden, part of some rotating art displays (the diplays rotate, not the pieces of art :-P), or so i am told. really is remniscent of that head from the movie zardoz, in a warped sort of way. there are some perspective problems with that first pic, as you can tell if you look closely. it also has tiny legs underneath ;-)
why, then ? because the grotesqueness and context inappropriateness and screwy perspective and zardoz reference is just so in synch with all this linux and xo crap. also, just because i wanted to share them with you ;-)
pic credits: passed on by craig, currently on assignment at mobot. photographer: (a) ? (b) Jay Paige.
[3] the original post started as:
"Right before leaving One Laptop per Child, I was tasked with re-architecting the tremendous mess that is the OLPC datastore, Sugar’s persistent data storage subsystem for applications. The system was written by an external contractor without OLPC oversight (after I interviewed him and explicitly warned against his hiring!), and is generally a stunning show of incompetence both in software design and implementation. It eventually shut down and rendered inoperable — even after reboot — hundreds of XO laptops in Uruguay, OLPC’s first deployment, a day before the children were supposed to leave for their summer vacation. Left unfixed, it would have soft-bricked all seven thousand deployed machines.
At the time, it wasn’t known that the problem was in the datastore code, and as these things go, I was thrown in to make the issue go away while everyone else headed home. In a scene straight out of a MacGyver episode gone horribly, awfully awry, I needed to write a userland NAND flash dump tool, send it to my Uruguay contacts, download the resulting disk dump, diagnose the problem, write a patch, QA it, issue it to Uruguay, and follow up to make sure the problem is indeed resolved. By myself. On a nine hour deadline. Needless to say, it was about as fun as sticking red-hot nine inch nails into each of my eyelids.
Ah, such fond memories. ..."
[retrieved from google cache 2008.04.12]
i think this is an important perception to be preserved. since it's my responsibility for digging this up and posting this here, and the original post was (apparently?) self-censored, you may as well consider this as fiction - but interesting fiction, nonetheless.
[4] i think it's funny (ironic?) that years ago one big fuss over windows was that originally it was overlayed on dos - just like currrent linux guis are overlayed on their bases. of course, there were some accompanying architectural issues as well, such as the use of segmented address space, but still...
-
not with the concept, but with the term: "... I call it the "one pair of glasses" theory. ..." uh, dude - it's called a _golden_hammer_, and you're not the first to notice.
del.icio.us daily blog posting (an "experimental" feature since early 2005, or before) has been acting flaky lately; a couple other people have noticed too:
yeah, my status message is currently "results:Running at Tue Mar 25 03:37:23 2008 GMT<br>Fetched 0 items.<br>", even though it last posted on april 1. it's missed a couple posts too in recent weeks, both for me and for craig.
no biggie, just needed a reality check.
something was itching at the back of my mind (no, i just got a haircut), something i was supposed to do in april... oh, that's right; i had signed up for a local .net "conference". gotta try and remember - april 19.
i don't know when they posted their session / speaker list, but browsing through, here's what looks interesting:
- A LINQ to Everything
mainly because of a list of interesting sub-topics, and also because i have some serious reservations about how people are viewing this set of technologies and how they should be used in a real-world development scenario. i need to know more before i can come to any reasonable conclusions.
- An Introduction to Boo and DSL
domain specific languages. now we're talkin'.
- F# It!
anything new & different in languages is cool. well, f# has actually been around for years (i posted something somewhere on this in 2003), and functional languages have been around for decades. compatible with my mathematica background, i'm hoping these become more widely acceptable.
- The C# Variety Show
because of this quote: "I guarantee you'll see more references to Beer than you ever had in any other technology talk."
there are some other items of miscellaneous interest, but i'm not sure how they're organizing this, so i'll see what i can line up.
update:
crap, those first two i mentioned are offered in the same period. and they appear to have six segments for the day. guess that miscellaneous stuff will kick in then. there's only a few items that i'm really not interested in, so no problem.
odd, that i got a reminder email (actually, three duplicate messages) a few hours after i first posted this. mentions the newly posted sessions list, and has a link to a survey about what sessions are of interest. coincidence / synchronicity ? almost certainly. but i've noticed that they seem to watch their analytics almost as closely as i watch mine (i watched them watching me once or twice), so who knows, maybe they visit their referrers like i do sometimes. gotta love iis logs, feedburner & ga stats etc ;-)
...in my aol communicator hacking. after changing all my aol type accounts to imap accounts as noted in the last post, i tried to add another non-aol account:
wups - won't let you add any of those until at least one "valid" aol type account is already present. so i reversed the changes i had made for one account i don't use and for which mail is turned off anyway, and that solves that. "valid" is just an empty, scary word, i guess. i'm not sure this would have worked if i tried to create a new aol type account from scratch.
update on the smtp issue: i can't seem to get anything sent out through aol's smtp server. yes, i'm using smtp.aol.com:587. yes, i have the right smtp credentials. i keep getting the following:
so i guess another smtp server will have to do. might work if you were dialed in through aol, though. what this probably means is that you can't send mail from an aol account in aol communicator, since i would bet that most smtp servers would reject mail from a "foreign' account, even if the smtp login credentials were ok. if not rejected, any one of the receiving systems, all the way down to a mail client, could flag it as spam for having a "spoofed" from address. and finally, even if it gets through, it could still look as if it came from the account associated with the smtp server used instead of the aol account. so specifying a "reply-to" is a good idea if you go this route.
here's a note from the old aol mail faqs for imap:
"You do not need to use the AOL SMTP server, but your message will not appear in your AOL Sent Mail and may be blocked by filters that do not believe AOL members should be sending email without using the AOL SMTP server."
those faqs are fairly old, so take care with some of the information they contain. for example, retention & space usage rules have almost completely changed.
a note on imap vs. pop3: i could have done either, but imap was much closer to the old aol type access. also, aol communicator doesn't seem to have pop3 over ssl configurable, in case that was an issue.
More Posts
Next page »