Well, my wife is looking for a not too expensive new vehicle with room in the back for a wheelchair (for our son, due to sometime behaviour problems).
Took a used Ford for a test drive because my wife liked it's size, and MAN, the MS UI in that thing sucked!!!
When we got back, the salesman told me they had dropped it for Blackberry (QNX) for the new models.
Seems there is intelligence on Earth!
Just thought i'd put that out there.
A while back, when such matters were important, I wanted to install the Apache Web Server, MySQL Server and Perl on multiple Unix servers. I wanted this to be a repeatable process which would be trivially adapted in the case of upgrades and security fixes. So, I began writing install.sh in the following form:-
#!/bin/sh
tar xfz httpd-1.3.22.tar.gz
cd httpd-1.2.3
./configure
make
make install
cd ..
tar xfz mysql-4.0.15.tar.gz
cd mysql-4.0.15
./configure
make
make install
cd ..
This has quite a few limitations. Firstly, version numbers are hard-coded. Secondly, there is no error checking. (Yes, I know that make handles the latter but let's continue revelling in my ignorance. You'll be surprised how far I can get and what can be incorporated from it.) A slightly smarter implementation is to use shell backticks for the purpose of finding the most recent version number. Oh, and, for portability, we may wish to avoid GNU-specific extensions, such as tar xfz:-
#!/bin/sh
gzcat `ls -d httpd-* | fgrep .tar.gz | tail -1` | tar xf -
(cd `ls -d httpd-* | fgrep -v .tar.gz | tail -1` && ./configure && make && make install)
gzcat `ls -d mysql-* | fgrep .tar.gz | tail -1` | tar xf -
(cd `ls -d mysql-* | fgrep -v .tar.gz | tail -1` && ./configure && make && make install)
This still lacks portability and error checking. This can be added to shell scripts. However, there is a much more subtle problem. This implementation doesn't handle a transition from project-X.Y.9 to project-X.Y.10 because the sort order of ls -d differs from requirements. On some platforms, this can be fixed with ls -dv. However, other problems remain. Firstly, the number of archive formats has grown significantly. We regularly handle .gz, .bz2, .xz, .7z and others. Dependencies have also grown significantly. For example, each of the major four forks of MySQL Server (Oracle, MariaDB, Percona, Drizzle) have four or more dependencies (and with little overlap between forks). So, you'll require a smattering of cmake, boost, m4, bison, ncurses, readline, gperf, protobuf and uuid. Ridiculously, boost requires python. Meanwhile, protobuf is mildly allergic to stable releases. In another example, Apache Web Server, nginx and Drizzle all require pcre [the Perl Compatible Regular Expression library].
Dishonorable mention goes to projects which break standard naming conventions such as:-
Python-2.7.10.tar.gz
iozone3_434.tar
node-v4.4.4.tar.gz
or support for a varying subset of:-
./configure --prefix /path/to/install
./configure --prefix=/path/to/install
and that assumes that configure is in a standard location, unlike python (again), iozone (again), boost, nginx (varies with version) or perl. Most boggling is the llvm back-end and cfe front-end of clang which use incompatible build systems with the exception that both deny compilation from the source directory tree. WTF?
Most alarming is that openssl-1.0.2h (current version at time of writing) doesn't compile with the DES cipher or the MD5 hash algorithm. MD5 has been publicly known to be insecure for almost nine years and DES is just as bad. Admittedly, openssl has to provide interoperability with previous versions and popular forks which may be in open-source and closed-source products with five year support or more. However, it is dangerous and worse than useless to have the most popular implementation if it is not secure by default. Unfortunately, plans to accelerate deprecation of insecure ciphers and hashes may push developers to distribute an outdated version within their own projects or encourage forks with common flaws.
On the upside, on a Raspberry Pi, I've reduced Perl execution time by 22% and MySQL stored procedure execution time by 45% while maintaining numerical accuracy and reducing compilation time and memory.
Unfortunately, I've been wading through this quagmire because my venture requires repeatable source code compilation with the added complication of providing low-bandwidth, secure updates and supporting low-memory RISC servers. This had led to the following development which is presented in a simplified form. For deployment, this build system is intended to run in one of numerous split-privilege accounts. For development and testing, build/Makefile assumes the following directory structure:-
In addition to this, $HOME/build/hash.table is pre-configured with SHA1 checksums of the Makefile and known projects. If you are certain that you have reputable omission from this list, such as a legitimately modified Makefile, add it in the following manner:-
shell> cd $HOME/build
shell> shasum Makefile >> hash.table
shell> shasum repo/project-1.2.3.tar.bz2 >> hash.table
In general, something like make apache, make nginx or make perl should validate, decompress, patch, configure, compile, test and install the required project and dependencies or inform you of one or more significant omissions from the repository.
This archive has SHA1 of 1fea7e2cd6222fe73f3962a4a1c1c68b77d612a0:-
begin 644 build-dist-201608.tar.gz
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
MS!^)]0>'X=!L(N+W*ET
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
(HNM`!0!``0``
`
end
According to the relevant Wikipedia article, around 6 billion people in the world identify with one of the 5 major religious groups in the world. Another couple hundred million identify with "medium sized religions". That's by far the majority of the world's population who are engaged in some form in organized religion and the common interpretations of spirituality.
I was born in the late 1980's, in the UK, my formal education spanned the 1990's and early 2000's. Unlike most who frequent this site, I never went into formal higher education beyond day releases arranged by my employer at the time.
Older generations of the family, parents and grandparents, have never displayed or discussed any religious affiliation. One of my grandparents was by all appearances an atheist. Strongly against religion being taught in school, in any form. Passing away before I was even a teenager, never had the opportunity to discuss the nuances of the anti-religion disposition.
With that, religion never being discussed in the home, the contrast to that with my state-sponsored education, in the 1990's especially, gives me pause for thought. There were christian prayers and hymns every day in my primary education. The only reason possible for not taking part in that was being one of the few Muslims or Hindus in the school. Everyone else had to participate. The only time religion was mentioned at home was "if you're asked what religion you are, you're C of E" ... I had no idea what that meant at the time, just knew what i was told to say if the question ever came up. As a child, i was never introduced to the idea you could not have a religious affiliation. We're all Christians, Muslims, Hindus and Sikhs of some stripe or other...
Both my parents, and my mother's parents were very concerned about the social isolation and stigma resulting from not publicly identifying with the established religion. I was going to be christened to ensure I would have the ability to get married.
Now times have apparently changed since then, and I doubt primary education in mainstream state schools have hymns and prayers still. In hindsight, to me it's quite surprising it was still the standard in the 1990's. There was numerous attempts made to indoctrinate the youngest and most impressionable into Christianity, sponsored by the state, there was non way to opt-out of this. It was very much part of the curriculum. It continued to a lesser extent in high-school, everyone got given a bible for some reason, although I do not recall prayers and hymns.
I do believe in a spiritual side of life, my experiences make it impossible to deny. However, that blending organized religion, faith and education, especially when state-sponsored for the general population is very troubling to me.
Organized religion is often just a tool for control, and what better time to introduce people to that than in their formative years, in a formal authoritative institution in which they have to attend continuously for years, but have little to no agency within. This kind of education does not encourage actual learning.... Text books, like the bible are gospel. Critical thinking and comprehension get in the way of rote memorization of various elements of propaganda, especially in the social sciences. Religion and formal education institutes seem primarily designed to give us a framework for our worldview to be confined within, not to expand out from, in the hopes of avoiding the difficult questions that might arise.
The psychological prison needs to be just big enough that we can't see all the bars at the same time.
Has anyone else had similar experiences of an apathetic family and a proactive state in religious indoctrination?
Okay, haven't written here for a while, got some time and something on my chest to ask: something that has been bugging me since it happened. This gun-toting 'Republic' of 'Freedom Fighters, Freedom Fries and Freedom Pies' seems to have accepted the dropping of democracy and the rise of blatant corruption. So here goes...
Are Americans apathetic?
Hillary stole money and support from Sanders, and got away with it: her friend in the DNC shuffles money away from Sanders, then says "No way!" when Sanders says it's happening. Corrupt!!!
Speaking of corruption, Hillary then WITHOUT ANY PRETENSE OR UNDER-THE-TABLENESS hires the corrupt thief and liar. Corrupt!!!
And Americans say......
Americans do.......
What what what?
Why aren't Americans in the street protesting???
1. Hillary has shown herself to be corrupt by condoning corruption in people under her and around her.
2. She blatantly reinforces and raises to a higher level, those who acted in a corrupt manner for her benefit.
3. She seems to be blowing Sanders off: rumours of her agreeing to do things he wants to shut him up, but only in the interim... then she will do what she wants after.
4. She's against the TPP, but not really and will support it once elected.
5. ...................
I know 3,4,and 5 are how politicians work, but 1 and 2 should have Americans screaming bloody Jihad or something.
Where are the protests?
Where are the cries of "CORRUPTION, CORRUPTION, CORRUPTION"?
Why are some Americans still supporting her?
I am Canadian and cannot vote in this US election, but I liked Sanders: now after Sanders giving in for "Let's beat Trump", if i WAS American, I think i'd be voting for Jill Stein who i know nothing about except for the slogan "Jill not Hill" or whatever.
Anything but Billary 'Corruption' Clinton.
Do you go quietly into this nightmare? Is everyone too busy playing Pokemon Go to protest?? WTF???
Damn, i'd vote Trump before Shillary.
Why is the U.S. so quiet about this blatant corruption???? Throw her tea into the harbour, i say!!!
Spoilers ahead!
I couldn't resist so I skipped through a camrip. (I'm sure the Correct the Record AC will come out of the woodwork and flame me for missing the brilliance of this film because I was skipping scenes.)
If this were any other bad movie (say for example Terminator: Genisys), I would have been happy just deleting the torrent and moving on. I'm putting this here so I can lay out exactly why I'm a big womyn-hating racist misogynerd that “can't get laid” who had the audacity to dislike this film and link it when the topic comes up instead of writing a mini-review every time. Also note this is a review, not a plot analysis.
The ending is a real WTF clusterfuck. The whole film tries too hard. It's not bad…. It had poor pacing—they spend too much time in academia—and a weak final boss that's a drawn-out, pointless CGI sequence that I'm sure will thrill kindergartners. There was also this weird frenemy thing going on between Gilbert and Yates.
Here's one concrete contrast between this film and the original. In the original, we have 3 chums who get unceremoniously evicted from academia in the first, what?, 15 minutes of the film, and they take it in stride.
In this film, we have a serious professor (Gilbert) who's about to become tenured (and close to discovering a Grand Unified Theory) whose career is in question because some book she wrote with the other protagonist (Yates) many moons ago goes viral on the internet, which is a gaping plot hole in unto itself. It just goes viral, for reasons. Then a Youtube video published presumably by Yates or maybe Holtzmann ends Gilbert's academic career. And we spend at least half the film moping about this. GET ON WITH IT!
There is one scene in particular where Gilbert petulantly stomps off campus that demonstrates this contast perfectly. I felt that scene did a lot of damage to her character.
It was trying, really trying to establish that all men hate women Ghostbusters. And that's its major problem. It's not four women taking on a supernatural evil using science!. The bad guy isn't even supernatural. He's just some dweeb with inadequacy issues that can summon ghosts with… a machine.
So let's talk about Kevin, played by Thor, who is played by incredible hunk Chris Hemsworth. First of all, there needed to be some scenes where he doesn't have a shirt on! But wait… that's not who Janine was at all. Kevin is a complete space case. He attempts to design a logo for the Ghostbusters and completely fails. He fails at being a receptionist—as in he doesn't even realize he's supposed to answer the phone. Then he disappears. Then he reappears during the exciting conclusion going “I wanna be a Ghostbuster!” only to be possessed by the aforementioned dweeb. Then we explore aforementioned dweeb's inadequacy issues with some inane comment about how much he likes that body better. Gah! See why we needed some scenes with him shirtless? There is no reason for this character to even exist!
So, why do we even have a sex object (and a delicious one at that) when the closest the original film gets to having eye candy like that is Zuul/Dana. (I forget, do I put the name of the possessing entity first with these things?) Of course, in that case, Zuul, being the Gatekeeper (along with Vinz Clortho the Keymaster), is a literal sex object. Literally! How was the original a kids movie?! They bring Gozer to New York by fucking!
Paul Feig suffers from a serious case of white knight-itis and needs to show how sympathetic he is that hunnies face such adversity from evil misogynerds who can't get laid (unlike him who I'm sure is such a Big Man)… and to be completely fucking honest, Gilbert, Yates, Holtzmann, and Tolan don't fucking need a white knight. There were so, so many scenes that were forced solely to show how disrespectful ALL men are to women. You can tell that the actresses didn't enjoy those scenes. The scenes where the Ghostbusters shine are absolutely brilliant and demonstrate that yes, women can be funny; yes, women can do slapstick; and yes, women can be Ghostbusters even if they have a shit sandwich of a script and characters that are written to be wilting flowers.
It lacks gravitas not because of Kristen Wiig, Melissa McCarthy, Kate McKinnon, or Leslie Jones; it lacks gravitas in spite of them. It almost feels like this is a new genre of film: (wo)man vs. writer. These actresses aren't held back by some vast misogynerd conspiracy on the internet. They're held back by a writer/director who felt the need to create four hunnies who are sooo victimized and sooo disadvantaged by being women. When he's not forcing yet another stupid scene about how unfair the world is to these women and how victimized they are and how it's not fair! (insert teenage Jennifer Connelly), Feig is throwing in gaudy, tacky references to the first film that are just distractions. Why is the Stay Puft Marshmallow Man here? What's the fucking point of the slimers? Yes, I suppose if you're a braindead idiot Ghostbusters is nothing more than Slimer and Stay Puft.
It's simply disrespectful to put this film in the same category as Mad Max: Fury Road. As a whole, Ghostbusters simply has. no. class.
I'm sure there's a detail here and there I missed, maybe a mention of Tobin's Spirit Guide and the Spates Catalog. After all, those were just mentions in the original film too. I also don't know how much input the actresses had with the writing.
There's obviously going to be a sequel based on the post-credits scene. It illustrates how superficial this film is. Zuul comes up. Why Zuul? Because braindead idiots will remember the voice in the fridge saying Zuul. Everybody knows that scene. It's the scene you reference when you want to telegraph that you've seen the original film but that you're not an icky nerd. Zuul was the bad guy of the original film, amirite? I mean, this isn't a major problem for me, but why not flat out Gozer if they wanted to be obvious? Why not go for obscure like the rectification of the Vuldronaii or Meketrex Supplicants or a giant sloar? (I'll fess up, I had the help of the Ghostbusters Wikia article on Vinz Clortho to get the spelling right.)
In so many ways, this film should have been maybe 40 minutes tops. I hope that they boot Feig off this franchise. Somebody else needs to give our new Ghostbusters something decent to work with. Here's a protip, Hollywood. You love your trilogies. I love trilogies! You don't make a good trilogy by taking the first 40 minutes of a great movie, stretching it to 116 minutes, and then releasing it as its own film.
It was a pretty good quality camrip. I'll probably rewatch it at some point as a drinking game to make sure I didn't miss scene 24, a smashing scene with some lovely acting that will completely change my generally negative opinion of this film. I'm not sure I could watch this film in its entirety while sober. There are just too many… cringeworthy… moments.
Today is my birthday. It's also my wife's birthday. Yes, we have share a birthday.
You might be thinking, "Oh, that's pretty neat!". It's not that great. When it's your birthday, you want to be treated even a little special. Maybe have dinner prepared for you, or something like that. Well, when it's both of your birthdays, it becomes just like every other day. After work (yes, I'm working on my birthday), I have to go to the store to pick up dinner. I'll have to help prepare it, and help clean up after. It's not that big of a deal. I don't really like celebrating birthdays anyways.
My wife is still preggers. Her belly is showing now, and it's pretty exiting. The morning sickness is over, but she still feels pretty tired at the end of the day. She goes to be early, and doesn't really have much energy anymore. Sometimes I feel bad because I wish I could take some of the burden off her. The frequent headaches and tiredness must be pretty tiring. I've been trying to help out more around the house and do what I can.
The girl that I talked about in my last entry is gone. I really liked her -- she was smart and sexy -- but I did end up scaring her off pretty much right after the last entry. I wanted (and still do want) a serious secondary relationship. She had just come out of a long term relationship, and so just wanted something more casual. Anyways, she decided that we were looking for different things (and we were, but I would have taken whatever she could offer). Since that girl, I kinda gave up. A pregnant wife complicates things a bit. Catching an STD at this point in the game could result in serious consequences for the baby, and adequate protection and testing to reduce that chance is a lot to ask of a new partner that you just met. That, combined with not really knowing what I will be able to offer once the baby is born, has left me in a position where I don't really feel all that comfortable dating.
I miss it though. I certainly don't miss the rejection, but I definitely miss those fleeting moments of excitement. I love cuddling, and I just don't feel like I get enough cuddles from my wife -- she's just too tired at the end of the day (no, 'cuddles' isn't code for sex. I just want someone to nuzzle into me). It's also summer and I really like getting out to the mountains. My wife doesn't have the energy to do anything strenuous, and so it's been a little frustrating because when we go out, I just want to go, but she can't keep up. Maybe I should just look for a female hiking partner... I don't know...
Don't get me wrong -- my wife is amazing. I have never met anyone more compatible, and there is no one on this planet that I love more. I really want to be clear - I love her to death and she is the most amazing woman I have ever met. I really don't know what this open relationship will look like after the baby is born. I hope I still have the time to date. Maybe the baby is exactly what I need in my life. Who knows?
Overall, things are good. I'm excited for my baby. My wife and I are great and I'm another year older - the big 33.
Before pictures of cats were popular on the Internet, we had text cows:-
$ fortune | cowsay
----------------------------------
| What's the major use of cowhide? |
| |
| Holding cows together. |
----------------------------------
\
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
And now the popular cowsay utility has been cow-patched to handle multi-line input correctly, especially if it contains UTF-8. Here's the archive with a SHA1 of d3cc231704eb8575941478be3ebbc19fb6b0f5c4:-
begin 644 cowsay-3.03c.tar.gz
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
M$5X`9_W6B#9.,?BWOHPH@3B_=OF\?9,9#>P50-NO_@@JSS(8JG:#LHE.+
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
3!0````````#PDP<PKBE*`!@!````
`
end
And here are some example uses:-
$ cowsay -f frog Hey, man. This lillipad is `df | perl -e 'while(defined($line=<STDIN>)){@field=split(/[ \t\n\r]+/,$line);if((index($ENV{'PWD'},$field[5])==0)&&(length($mount)<length($field[5]))){$mount=$field[5];$avail=$field[4]}}print $avail,"\n"'` full. Ribbit.
----------------------------------------------
| Hey, man. This lillipad is 99% full. Ribbit. |
----------------------------------------------
\
\
oO)-. .-(Oo
/__ _\ /_ __\
\ \( | ()~() | )/ /
\__|\ | (-___-) | /|__/
' '--' ==`-'== '--' '
If you're particularly inclined, you can chain/nest instances of cowsay:-
$ ls -l / | cowsay | cowsay | cowthink
----------------------------------------------------------------
( ------------------------------------------------------------ )
( | -------------------------------------------------------- | )
( | | total 84 | | )
( | | drwxr-xr-x 2 root root 4096 May 10 23:11 bin | | )
( | | drwxr-xr-x 3 root root 16384 Jan 1 1970 boot | | )
( | | drwxr-xr-x 12 root root 3240 May 28 11:17 dev | | )
( | | drwxr-xr-x 111 root root 4096 May 28 23:31 etc | | )
( | | drwxr-xr-x 3 root root 4096 May 10 22:57 home | | )
( | | drwxr-xr-x 19 root root 4096 May 10 23:12 lib | | )
( | | drwx------ 2 root root 16384 May 10 23:38 lost+found | | )
( | | drwxr-xr-x 2 root root 4096 May 10 22:52 media | | )
( | | drwxr-xr-x 2 root root 4096 May 10 22:52 mnt | | )
( | | drwxr-xr-x 7 root root 4096 May 10 23:30 opt | | )
( | | dr-xr-xr-x 104 root root 0 Jan 1 1970 proc | | )
( | | drwx------ 5 root root 4096 Jun 1 09:04 root | | )
( | | drwxr-xr-x 12 root root 320 May 28 11:17 run | | )
( | | drwxr-xr-x 2 root root 4096 Jun 1 05:17 sbin | | )
( | | drwxr-xr-x 2 root root 4096 May 10 22:52 srv | | )
( | | dr-xr-xr-x 12 root root 0 May 28 11:17 sys | | )
( | | drwxrwxrwt 17 root root 4096 Jun 1 09:53 tmp | | )
( | | drwxr-xr-x 11 root root 4096 May 10 23:27 usr | | )
( | | drwxr-xr-x 11 root root 4096 May 28 23:27 var | | )
( | -------------------------------------------------------- | )
( | \ | )
( | \ ^__^ | )
( | \ (oo)\_______ | )
( | (__)\ )\/\ | )
( | ||----w | | )
( | || || | )
( ------------------------------------------------------------ )
( \ )
( \ ^__^ )
( \ (oo)\_______ )
( (__)\ )\/\ )
( ||----w | )
( || || )
----------------------------------------------------------------
o
o ^__^
o (oo)\_______
(__)\ )\/\
||----w |
|| ||
So, audioguy (one of our sysadminy types) was checking the firewall logs and apparently one of the speedbumps we put in for bots got tripped by an L-3 Communications Holdings address. Not to be confused with Level 3 Communications, L-3 is the sneaky spy corp born of the Lockheed Martin merger. So, yes, we're officially being actively (as opposed to the passive scraping the NSA does to everyone's traffic) electronically surveiled.
Mind you, since they're tripping our firewall, they're not going to be seeing much unless they throttle back how many connections they use at once. They really should make use of the API for bot stuff. It's still firewalled but there are bits in it that can get you much more info at once and save us both the overhead of inefficient scraping.