Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
It's funny.  Laugh.

Journal Journal: Why is politics like hooking up in a club? 6

Clicky: Ain't it the truth?. (stupid slashdot "designers'" - links no longer look like links. Thank $DIETY they don't "design" toilets, or we'd be deeper in s*** than we are now!

Top 10 answers

1. Someone's going to get screwed.
2. You'll regret it - either the morning after, or some time in the next 4 years ...
3. Lies, lies, lies ...
4. The consequences of a bad decision will haunt you long after they're gone.
5. They always look better in the dark ...
6. "I was drunk" is the only rational explanation for either one.
7. No matter what they promise, if you fall for it, you'll end up paying for it
8. The odds of getting a real winner are pretty much zero
9. You keep wanting to believe that "this time is different", but deep down you know it's just wishful thinking.
10. In the end, you'd have probably been happier just staying at home and watching a movie.

The only thing worse is Soviet Russia, where club hooks up YOU!

"Welcome to the vote, comrade. Here's your secret ballot. Please place it in the voting box."
"Sure, do you have a pen so I can mark it?"
"NYET! Comrade! It is called a secret ballot for a reason!"

Hardware Hacking

Journal Journal: In the future, kernels will be smaller, simpler, & faster 2

Today you can put together a box with 32 gigs of rram for under $1k. Today's hard drives come with 64 megs of cache built in. Contrast that to the situation 20 years ago, when a meg of ram was $100, and hard disk caches were 8, 16, or a "whopping" 32k.

The design and implementation of a kernel based on what was available 20 years ago wouldn't be like one made from scratch today. As current trends continue, computers with 32 gigs, 64 gigs, etc., will get cheaper. Similarly, hard disk manufacturers will continue to both increase cache size on spinning platters as well as increase their market penetration for SSDs.

So, what do you throw out when making a future kernel?

First, if you have 32 or 64 (or more) gigs of ram, get rid of swap space - it's simply not going to be needed. It's not even really needed in many situations today. This old box has only 2 gigs of ram, no swap partition, and yet it runs database, ftp, mail and ssh servers, a gui at 3840x1200, and openoffice, gimp, eclipse - all within 1 gig of ram ... so the only virtual memory on a future system will be for mapping addresses, not "disk-based fake ram".

Second, get rid of huge portions of the I/O system that tried to make up for hard drives being dumb. The "elevator algorithm" (whereby you just sweep the head back and forth in large arcs on the disk, and only write data when the head is in the right place, rather than jumping back and forth all the time) is obsolete when you have a half-dozen 4tb drives, each with 128 to 512 megs of cache - and each implementing the same algorithm internally ... or a bunch of SSDs that don't have drive heads. In either case, the future kernel has less work to do, so it will take up fewer clock cycles ...

Third, the idea of using ALL free memory for buffers and caches will disappear - a relatively small ramdisk will be more efficient, same as it was 20 years ago, when if you over-sized your cache, you saw a performance drop because of time wasted searching the cache first and managing it.

Buffers? That's going to change too. We're finally making the move (January 2011 was the "offical date") to 4k real hd sector sizes (up from 512 bytes), but we need to implement variable-sized sectors on either a per-track, per-partition, or per-drive basis. having a few tracks with sector sizes of 1 to 4 megs each could come in pretty handy for those big videos. Eventually, it will be supported at the storage level directly (the new standard allows for hd sectors greater than 4k), so the drive will be able to handle a 4-meg read as a single chunk, with only one inode to update. Not splitting it up into 1024 inodes and 1024 4k disk blocks and managing each one.

End result - less drive fragmentation, quicker reads and writes on large sequentially-accessed files (which also makes program loading quicker).

Having what used to be considered an "umpossible" amount of ram and absurd on-disk caches is going to make future kernels simpler to design, simpler to write, more energy-efficient, and faster. In other words, all of todays kernels - whether windows, linux, frebsd, or whatever, will be obsolete within 10 years.

Red Hat Software

Journal Journal: Bye-bye OpenSUSE 12.1, Hello Fedora 16 35

Well, since a second upgrade attempt left opensuse even weirder (dialogs with half the controls not working, firefox going from crashing every second load to every load, etc) it was time to nuke it again, but this time replace it with something different.

The question was, what?

It turns out that FreeBSD does not like my video setup (which is too bad, because I had 6 consoles open, and compiling a different part of the ports tree in each one, and there was no indication that it was under any sort of load, even though the load average was ~6).

Linux Mint? Tempting, very tempting ... but they're going off in 3 different directions right now.

Good old slakware? I downloaded the DVD (using knoppix, since the os was hosed), then went looking for updates ... apparently, the package browser is now someone else's problem .. and that page says that they're not doing it any more, and to come back when they've got their "new improved" whatever ... and slackware.com is down at the moment, so no linky for U!

So, what the heck - go grab Fedora 16 and install it ... then find out after doing the install and a couple of gigs of new packages and updates, that it hangs on reboot ...

I finally figured out the problem - for some reason it doesn't see my usb keyboard (plugged into my screens' usb hub) and it's waiting for a keyboard to appear ... so I have one of those rubber roll-up keyboards and a usb2ps2 adapter sitting on top of the box, out of harms way ... probably one of those "1 in a million" things - like having to unplug the second screen to get the initial install to work, then plug it in and when it reboots, dual screen goodness with no fuss, no muss. Using xrandr to dynamically set up the screens and dumping xorg.conf looks like a real winner.

The funny part - I've always found gnome to be kind of ugly, but the old 2.whatver gnome, the way they fixed it up is nice. I could get used to it ... (though I can't wait to see how lxde looks).

the evil part

SElinux. I removed it, and the machine is MUCH faster. so when they say it "only used ~7%" I'm not buying it.

In other good news, my colour laser FINALLY WORKS!!!!!! It was recognized, but no drivers - and this time the Samsung drivers installed with no hassles, so the only thing that still doesn't work is the scanner. I can always scan to usb (or maybe just make a patch cord and plug it right into the computer that way????)

One last speed-up ... no swap file, so there's a lot less time wasted managing fake ram (and more real ram available for running programs). It's not quite as fast as my dual-core lappy was, but for an 8-year-old ram-deficient box (only 2 gigs), it's still got lots of life left in it.

If you looked at my previous post, I tried to load it down, opening eclipse, openoffice, the gimp, playing mp3s in amarok, firefox and opera both open, web server, ftp server, mail and news servers running in the background ... and it still used less than a gig of ram.

Just goes to show that the real bottlenecks for everyday use are mostly self-inflicted "best practices" that aren't so great any more. If you want to try your machine w/o swap, but have the option of restoring it, just fdisk the drive and change the partition type from swap to anything else - no need to format it, since you won't be mounting it. If it runs okay, then you might want to reformat it and use it as a separate /tmp or whatever, and clean it on every reboot (note - do not do this until after you remove SElinux or you will be very sorry).

User Journal

Journal Journal: Another "interesting" upgrade attempt 8

Regexes are a PITA to work with, but editing them is more so when you're having a hard time seeing properly - all those (*$^!.*/ tend to look more like comic-book swearing than ever.

So I figured it would just be quicker to write a program in c.

But realloc() kept throwing errors on the 3rd or 4th call, but only for one variable. Did I make a mistake? It happens ... but after wasting more time than I want to admit, I said to heck with it, it's got to be the compiler.

So, went and upgraded the distro once again, and sure enough, it was the compiler. I have to admit I was taken by surprise when I didn't get that long assertion failed message instead (and who is the retard who makes assertions that are so long and complicated that they're going to need an audit just to verify that they actually do what they claim to do???).

So ... all's well that ends well ... except ... lots of programs now just "sort of" work. Firefox crashes on start, then works okay on restart. Close it, restart - crash again immediately. Restart, runs fine. Close, restart, crash again ... Other programs are now missing chunks of functionality, dead areas that don't respond to the mouse, whatever. And this is after pretending it was a sick windows box instead of a linux box (update, reboot, test, force update, reboot, test).

All this got me thinking - how come the code I wrote today, in c, to parse out some files doesn't run faster than the c code I wrote a couple of decades ago on a machine that was 100x slower?

The answer is simple, and disappointing. Past a certain level of complexity of the software stack (OS, libs, compiler), you don't get improved performance. It all gets sucked up by the stack.

20 years from now, are we going to have machines with a terabyte of ram, 256 cores, and only running as fast, on average, as an old 386 because by then we'll have past the peak and gone into negative returns territory but can't go back because everything would break worse? For example, code with so many security checks that it's into "infinite bug" state, where fixing one exploit opens up another one (personally, I think we're there already, but that's another story).

Ubuntu

Journal Journal: For the doubters ... another nail in Canonicals' plans 5

A couple of weeks ago, I wrote about how 2012 is the beginning of the end for Canonical:

Next week, Canonical is going to try once more to generate a bunch of hype over some new deal or other - this time it's Ubuntu TV (to quickly be called "Who Gives A $** TV). So much for tablets, which they have totally lost the market to because they couldn't get Android to run.

As you can see, Lenovo is rolling out a 55" Android Ice Cream Sandwich TV, complete with facial recognition, voice commands, a swipe pad, motion detection, a second game pad, etc.

The real significance isn't even that they're "rolling their own" instead of partnering with a linux developer - the real news is that the domestic Chinese market is now large enough that they're selling there first.

Will this be a repeat of the Japanese market - where they get all the cool gadgets, and we get stuff that looks like cheesy stage props in comparison?

It's funny.  Laugh.

Journal Journal: I knew I hadn't checked my email in a while, but 2 months??? 9

Between the failed opensuse upgrades, the hardware failures on both my desktop and my laptop, and my health issues, it's taken me a while to configure a new email client.

This morning, I decided to try the "work on the computer for 10 minutes, take a break for 20" routine, and that didn't work at all. This afternoon, being a bit desperate to find ANY sort of solution, I figured - hey, why not take some of those really really big Tylenols - what's the worst that can happen.

Well, it's taken enough of the pain away from my eyes that I can actually configure a dozen email addresses and catch up on all my spam^Wemail. Okay, who am I kidding - it really was more than 99% spam.

Tylenol isn't going to be any sort of long-term,or even short-term - it's starting to feel like someone punched me in the eye, but at least that's not as bad ... so hopefully, with enough breaks, I may be able to do a few things that really really need to get done.

It's either that, or my other options - go into politics or do stand-up comedy - because our politicians are real jokers, except that they just are NOT funny.

Sure, the last time I ran for office I bombed, but this time, I'm smarter. I'd form a new political party - "None Of Those Crooks". Can you imagine the results to pollsters asking "If an election were held today, who would you vote for, $PARTY_1, $PART_2, ... or None Of Those Crooks?"

It would definitely apply here, where the government, after trying to sweep everything under the rug, is being investigated for its MANY ties to organized crime.

Medicine

Journal Journal: One step closer to "The End". 6

Tomorrow, on my way to my next doctors' appointment, I'm hand-serving notice to the government giving them 48 hours before filing a complaint against them with the local human rights commission for actively discriminating against me on the basis of a physical handicap. I'm fed up with being in a situation that I have no control over, that I can't do anything to fix, that's just going to get worse with time, and not getting ANY help whatsoever.

There's no two ways about it ... both eyes are going. I can surf the web for 10 - 20 minutes with everything triple size, then I have to take a break for a few hours. Trying to write code has become an exercise in frustration, even with 2 x 26" screens and 30pt fonts (and let me tell you, you don't see all that much code at 30 points, so my productivity is not the greatest, never mind my occasionally losing sight of the mouse pointer completely).

I did a few hours on Friday evening to finish the actual code, so all that's left is some conversion functions, and slapping together some descriptive web pages. But I simply can't bring myself to do it. Saturday was a non-starter. I tried Sunday, and had to stop after 15 minutes. Monday? After going on the net over breakfast, it was obvious I wasn't going to be able to do any real work.

It sucks when it takes a week to do a days' worth of stuff.

The worst part is that as far as our wonderful government is concerned, unless I am pretty much totally blind, I'm "able to work". Even though nobody's going to hire me as a programmer (or anything else) if I can only work on $RANDOM_DAYS for $RANDOM_HOURS at a time.

I've had to deal with a lot of problems, but this, on top of everything else ... there's no real solution.

Canada

Journal Journal: Never thought I'd see an immigration scam on /.

Or worse, asking for help.

Canada has required all immigration consultants to be registered since 2004, and has had to put a cap on the investor immigrant classification because of extreme fraud.

Here's what the web site says:

About Rodolfo Martinez

I am the Executive Director of Ontario Immigrant Network, and currently we are working to connect newcomers to rural business succession opportunities.

In other words, "buy your way into the country by buying some dead persons' business or a business that is being sold."

Mr. Martinez is not licensed to advise immigrants - not in how to get into the country, not in how to get connected with businesses they might want to buy to "queue jump", etc.

BTW: Non-profits can be VERY profitable for the people who run them.

For those who want to quibble - forget it. From the official government site

With the coming into force of Bill C-35, anyone who provides paid advice prior to the filing of an application or the commencement of a proceeding will need to be an authorized representative. This means that some third parties who were not formerly required to be recognized to provide paid advice will now have to refer people to an authorized representative or become authorized themselves. Some examples of paid advice or representation that will now be captured through the implementation of Bill C-35 include:

representing the applicant during an immigration proceeding by speaking on their behalf.

providing guidance to a client on how to select the best immigration stream and complete the appropriate forms.

Connecting potential immigrants to "investment opportunities" that allow them to take advantage of the investor immigrant class requires being licensed.

Medicine

Journal Journal: Shaken Baby Syndrome Physically Impossible? 15

The CBC's 5th Estate is reporting that biomechanical tests show that it is pretty much impossible for even a big rugby player to shake a baby nearly hard enough to produce the damage claimed for Shaken Baby Syndrome, that doctors who have contested the accepted view have been threatened with loss of their careers, and that even the "confessions" are in many cases induced by the investigators.

Not only have the biomechanical studies ruled out the physical impossibility, but the second indicator, bleeding behind the retina, is also now discredited - 1 out of 7 deaths from ALL causes have the same symptom.

For decades women were accused of smothering their children, when it was SIDS. Is Shaken Baby the same?

Blackberry

Journal Journal: Canadian police snoop on Blackberry messages 2

Multiple sources have reported that the RCMP have been able to access encrypted Blackberry messages. While this has been possible with a warrant, neither the RCMP nor the Surete du Quebec will confirm that a warrant was issued, and the judge in the case has sealed much of the evidence.

Was a warrant ever issued, or do the RCMP have a back door into RIM servers?

Ubuntu

Journal Journal: Prediction - 2012 is the beginning of the end for Canonical 17

Next week, Canonical is going to try once more to generate a bunch of hype over some new deal or other - this time it's Ubuntu TV (to quickly be called "Who Gives A $** TV). So much for tablets, which they have totally lost the market to because they couldn't get Android to run.

Canonical has already been upstaged in the tablet field by another company who have actually begun shipping android color tablets at $52 each for the base model, and for $10 more, a gutsier model that can play hd video, better battery life, more ram and storage, etc.

The company doing this, DataWind, won a design competition held by the Indian government to supply every university, college, high school and grade school student with a general-purpose tablet - which, after the Indian government throws in their subsidy, will bring the cost to the student down to something like $20 - $30.

(on a side note, this also means that the OLPC project has just been locked out of the second-largest market in the known universe ... and you can be sure they won't ever get a foothold in the largest one either, since any country can take a license to manufacture the $52 tablet locally)

So here's the thing - a company with 150 employees decides, basically on a whim, to try to enter the competition to supply Indias' education system with millions of tablets at the lowest cost possible, puts up the $100,000 bid bond, and in a few months produces both the hardware AND the customized linux and android software, and wins. Contrast that to what Canonical announced almost 3 years ago - that Ubuntu would be running Android in the "Ubuntu Android Execution Environment." Lots of hype, then quietly abandoned.

Does Canonical even have all that many real software developers on staff? All they seem to be doing is offering re-badged software and services (Ubuntu Cloud, Ubuntu 1 Music Store, etc). and fooling around with the user interface. Most of their "hundreds of employees" are either what are known as "peddlers" (independent contractors who work with a bunch of companies to "peddle" their stuff to other companies or get them to cooperate on stuff, etc.), university students making money at (heavily - 42.5% of pay and administrative expenses) government-subsidized call centers, or part-timers working from home under contract for specific tasks, not "real employees."

So basically, this is the year that the rest of the world figures out what some of us have suspected from the beginning, and known for a couple of years - that Ubuntu was about marketing hype as an attempt to cash in on the linux buzz, not linux itself, not software - just a market play that didn't pan out. The latest goal of "200 million users running Ubuntu in 4 years", set in March of last year is SO dead. There is NOTHING that Shuttleworth can do to change that. Why? Because even the most die-hard Ubuntunistas are realizing that there's not much behind the curtains ... that Shuttleworth simply doesn't know what he's doing, and that's why Canonical flits from one "vision" to another like a kid on a sugar-fueled high after Halloween.

Ubuntu TV? Don't make me laugh. If I want comedy, I can already watch it without Ubuntu.

Programming

Journal Journal: Don't you just hate it when that happens?

There's a difference between "feature creep", "mission creep", and "organic growth", but sometimes it's hard to tell the difference.

Mission Creep: The goals change as you get further along in development. Developers hate this, and it happens so often in a second version of an application that it has its' own name -Second System Effect. Basically, the second version of the system gets loaded with all sorts of extra bells and whistles unrelated to the core. Hence "Every system evolves until it can do email."

Of course, it's not just the second iteration that can be so cursed. Mission creep can happen to anyone, because it "seemed like a good idea at the time" to someone who you can't say no to. Or the seductive song of "it can't be THAT hard to also cover this market ..."

Feature Creep: Even in first iterations (especially in first systems), feature creep is a problem. Why "especially"? Because until you're actually working with the system as it develops, there are probably going to be features that seem to be "must-haves", that aren't - and nobody wants to kill half (or more) of their code to eliminate a feature that now seems to be not so hot ... after all, maybe it will turn out to really be needed, or maybe it can be adapted ... or maybe cows can fly.

Of course, in the real world, you have two choices - either enter into anything realizing that the only way to make something different is to go in knowing that you're going to knife more than 95% of all the code you wrote - and be happy every time you find something that you can eliminate, because now you've made the end users' job easier 9 times out of 10 (and yours down the road as well, because code that isn't in the product doesn't have bugs :-p) or be angry because of the delays.

Organic growth: Unlike the first two, organic growth is one of those "Good Things" that, like Justice Potter Stewart said about porn, "we might not be able to define it, but we know it when we see it." A feature needs to be added, dropped, or modified to better support the original mission. You "eat your own dogfood" and realize that something - a process, a functionality, an interface feature, whatever - can be simplified, eliminated, automated, or otherwise improved.

Or you take a break and realize that there might be a better way to meet the original goals, so you code it up and test it ... and even if it fails to meet your demands, the additional insight can still enhance the final product.

So ...

Last week, despite the problems with my left eye, I was pretty much completed stage one. It was already "good enough" (and has been for a while, according to a few people) to put out into limited testing ... but one little part was a bit awkward ... and fixing it took less than an hour, worked as expected the first time (always a good sign), and really makes such a difference in ease of use that there's no way I'd consider dropping it.

So that leads into a problem ... there were parts that I was going to implement later on, that are now crying out to be included, because the screen real estate is already "claimed" for both the feature I just added, and the next part, and a lot of the core functionality to enable it is already present.

So, take a day to experiment, implement the back-end, try a few things, and it works ... and it looks REALLY snazzy ... but it's not quite what's needed. And doing it right will (I estimate) take another week. And there's the question of whether I can use any of the "SNAZZY 101" stuff ...

I "think" I can. I "want" to. But is it right? The only way to tell is to develop both, and see which works best, or whether I need to create a third alternative. And in the meantime, another week is lost, pushing out initial deployment to 2 weeks from now, barring any problems (because there's still a week of prep after it's "good enough to try").

The good news?

If I were doing this for a customer, there would be hell to pay because of the "it meets the original goals, just push it out" mentality. The same mentality that has reduced coding from an art form and a means of expression to a crap job with generally horrible working conditions in the first place.

Not having to listen to that sort of random noise is a Good Thing (TM). Not that it's likely anyone would hire someone who can't say, on a day-to-day basis, whether they can code or not because they might need a day or two at random to rest their eyes on top of the time off going to regular doctors appointments, blood tests, exams, treatments, etc.

Since this looks like "enforced entrepreneurship" will be the "future of work" for many of us, maybe it's time we took this as a positive, and not a negative. After all, to succeed, you only need to generate enough revenue to support yourself - not yourself, your boss, your co-workers, and everyone else in the food chain. It's risky as all heck, but if you're happier, isn't that what counts more, and will ultimately make you more productive anyway ...

... as well as the proven benefits of reducing the risk of mental deterioration as you age ... after all, what point is it to live to be SOME_OLD_AGE if you can't function mentally anywhere near your peak? If there's one thing we're pretty sure about senescence, it's that if you don't have the genes for mental deterioration* as you age, you CAN stave it off by continued mental work. It might take you a bit longer to recall individual items as your store of data grows, but that should be the only sign.

* simple marker - when you were a young'un in early grade school, did you write with short sentences (See Dick Run. See Spot Run. Sally spots Dick. See Sally Run. Dick is a Dick.), or long sentences (Dick was being a dick again, which is why Sally was running, and Spot was blah blah blah). If it was long run-on sentences, you almost definitely are safe as long as you continue to "work out" mentally. This was the ONLY predictor that was 100% accurate.

Slashdot Top Deals

"May your future be limited only by your dreams." -- Christa McAuliffe

Working...