Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
GNU is Not Unix

Journal Journal: Why I don't use GNU/Linux 6

There are two reasons why I don't use GNU/Linux: One is GNU, the other is Linux. Of these, the larger reason is GNU, and specifically the glibc part. The most recent reinforcement of this is Ulrich Drepper's inability to read the C specification.

For those not familiar with the C specification, all identifiers that start with an underscore are reserved for the implementation (see section 17.4.3.1.2). You should never use them in your own code, because your compiler is completely free to do whatever it wants with them. By convention, single underscores are used for global non-standard libc extensions and double underscores are used for compiler builtins.

You can find a number of these in existing compiler. Microsoft exposes SEH with keywords like __try. GCC provides __asm for inline assembly, ICC uses __cpuid for accessing the CPUID instruction, and so on. Clang added __block as a type specifier for their variables that are copied to the heap for use by blocks (closures).

Unfortunately, it turns out that the glibc headers use __block as a parameter name. There are several things wrong with this. One is that they use double underscores at all. By convention, these are reserved for the compiler, while single underscores are reserved for the libc. The second is that they used underscores at all in a parameter. Parameter names are not in the global scope, so they can be anything to prevent name clashes.

The result of this is that, if you use glibc, you can't also use blocks. This is a shame, because we (Etoile) were shipping a working blocks implementation six months before Apple. Well, working on *BSD and Solaris (and probably Windows, QNX and Symbian with PIPS, but not tested there). This problem means that it doesn't work on GNU/Linux.

No problem for me. I only use platforms with libc implementations written by people who can read specs. It may be a problem for some of you, if you use a broken platform with a libc maintained by someone who'd rather salvage his ego than fix a problem, and if it is then I'm sorry for you. My suggestion is that you remember that there are other options.

User Journal

Journal Journal: Freedom 5

I just had an interesting revelation regarding freedom. My mom came down with pancreatic cancer about a year ago, and I felt my personal sense of freedom curtailed. Sure, it was only curtailed by my own sense morality and obligation. but it was limited nonetheless. And I noticed, there is only so much freedom I am willing to give up. I was suddenly much more aware of, and resistant to, all the other limitations on my freedom like my marriage and my job and living in a society where I have to wear pants. Then my mom died, and I inherited a house and quite a bit of money. Now that my freedom is far less constrained by finances, or by dying single mother, only child dynamics, the minor impositions of job and marriage and pants obsessed society don't even register.

I've read that the sense of certainty is simply an emotion, a specific analog circuit that engages and drives our logical mind to come up with explanations. Now, through experience, I believe our sense of freedom is another emotional circuit. While in a strictly deterministic world individual freedom does not exist as such, the sense of personal freedom is a very real part of the chain of cause and effect.

(And thus, a personal conundrum is resolved, cognitive dissonance is decreased, and pants are worn.)

User Journal

Journal Journal: Changing my sig 1

After nearly a decade with the same sig, I've decided to get rid of the Python quote and replace it with something even more combative. I saw it in an Empire: Total War loading screen, heh heh.

"None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton.

Liberty is a social contract, it requires active participation to achieve it. License is "I get to do what I want."

Medicine

Journal Journal: Ghost Article: Man HIV-Free 2 Years After Stem Cell Treatment

The first Ghost Article in many, many months shows some strange behind-the-scenes SlashCode action. When I reload the original page URL, I get the generic "Nothing to see here, move along". But when I click on the "title" link, the one in the header before the comments section, the page that results has the full article title. It's not just echoing the text in the URL, either... otherwise it would say "Man HIV Free" instead of "Man HIV-Free". That implies that the ghost is still in the database... somewhere.

Man HIV-Free 2 Years After Stem Cell Treatment
Date: 26 Feb 2010
Orig link: http://science.slashdot.org/article.pl?sid=10/02/26/1637249
Title link: http://science.slashdot.org/story/10/02/26/1637249/Man-HIV-Free-2-Years-After-Stem-Cell-Treatment
Posted by kdawson in The Mysterious Future!
from the good-genes dept.

kkleiner writes

"According to a recent report in the New England Journal of Medicine, a stem cell transplant performed in Germany has unexpectedly removed all signs of HIV from a 42-year-old American patient. The unnamed white male was treated two years ago for leukemia with a dose of donor stem cells, and his HIV RNA count has dropped to zero and remained there since. While the treatment was for leukemia, Dr. Gero Hutter and colleagues at the Charite Universitatsmedizen in Berlin had selected the stem cell donor for his HIV-resistant genes. While there are still many questions unanswered, this is the first such case of stem cells treating HIV that has been reported in a publication of the caliber of the NEJM."

User Journal

Journal Journal: You've been served 13

So I served a guy a restraining order today. He'd beat up my friend a couple times, gave him a concussion the last time. So my friend got a restraining order, but he's a waiter and this is the dead time of year for that in Santa Fe, and he doesn't have the money to pay the sheriff to serve the papers. So I volunteered. This guy is a punk ass gangster wannabe who hangs out with a crowd of (snicker) Santa Fe toughs. But they kicked the shit out of my friend in public a couple times, and they are cracked out of their heads a lot of the time, so yeah, I was a little scared. But it was the right thing to do, and the fact that you have to pay someone to serve a restraining order sucks balls, so I had to do it. I had to track the fucker down, too, because he didn't show up for work tonight. He was off at some bar with his friends. I walked right up to him, made sure it was him (I've never met the guy), handed him the papers and walked out, calm as you please.

My hands are shaking a little bit now, though.

User Journal

Journal Journal: Mom passed away Christmas morning 9

Pancreatic cancer. You just don't recover from that one. This last year has been pretty hard. I'm the only child of a single mom, so this has all been on me and my wife. And of course, being my mom, she had to go die oversees. In a little tiny village outside of Peterborough in England. Well, she actually passed away in a Sue Ryder hospice in Peterborough, Thorpe Hall. The building is older than my country. She was staying with her old friend Marianna and her husband in Nassington. So there we were, my wife and I, in a foreign country experiencing the snowstorm of the decade, staying with virtual strangers in a tiny village with all of 20 or so buildings, for Christmas. I'll just say this, my mom died like she lived: weirdly.

Cellphones

Journal Journal: Zagg Zaggskins

http://www.zagg.com/zaggskins/index.php

Wow. I mean I thought the plastic sheets were a ripoff. My friend got a cover for their iPhone for $5 at a swap meet. They've got them for $20. We're talking almost watch markup here. Even if the quality is a lot better, that's not worth 300% more. Maybe if they have a 50% off sale then I would think of considering it.

User Journal

Journal Journal: Just testing out some journal submission changes 8

I don't actually have anything to say. Kathleen is due any day, and I'm looking forward to a few weeks of staying home, getting poor sleep, and changing diapers.
But mostly I'm testing to see if journal saving works properly.

User Journal

Journal Journal: Updates to Journal System 13

We've made some significant updates to the submission/journal system. Visiting Submissions and Journals yields a new form that allows stuff like tags to the data types. There are a number of annoying bugs, but for the most part the dust is starting to settle. More notes will be coming, but this journal entry is really just me putting the final test on the new Journal form.

Operating Systems

Journal Journal: Well, that'll teach me to run betas... 2

I saw recently that FreeBSD 8 was in BETA state. I ran 7-CURRENT for a while, because it had features I wanted to test (improvements to the OSS implementation mainly), so I thought I'd give it a try.

This time, rather than doing my usual source install, I tried a binary upgrade using freebsd-update. What a disaster. While the source upgrade procedure uses mergemaster to update configuration files, letting you just keep the new version of files you haven't modified, freebsd-update makes you merge them all by hand where there is a conflict. This wouldn't be a problem, except that all of the config files have a version line at the top, which conflicts between the two versions.

Inevitably, when manually handling the merge for a few dozen files, I missed an important bit so my first boot failed with an error complaining about the diff lines still being in the file. I fixed that, and rebooted.

My next boot failed because one of the startup scripts had replaced an if statement with a case. Unfortunately, this hadn't shown up as a conflict, so it had just taken the start of the case statement and the end of the if, giving nonsense. Fortunately, I was able to find the correct version in CVS and copy it out.

Next boot, my network interfaces weren't working. Actually, this was a problem I'd found earlier. When you update FreeBSD, you update the kernel, reboot, then update the userland (the new kernel is guaranteed to support the old userland, but the converse is not true). The em driver for Intel GigE cards complained that they both had invalid MAC addresses. Not a huge problem; it's a VM so I could just change the kind of virtual network card it was providing to the machine, but checking the bugs database I discovered that it's giving the same error for people with ThinkPads that actually do have this kind of hardware built in. Great.

Finally, my system decided to fail to boot with the error:

mounting /etc/fstab failed, startup aborted

Strange, I thought, I wonder which disk is failing to mount. A quick check in single-user mode showed that everything in fstab had mounted correctly. I eventually tracked this down to a bug in /etc/rc.d/mountcritlocal. This is not present in CVS, so it's probably introduced by the merge process. The value of $? (the exit value from the last command) is stored in $err, another command is run, and then there is supposed to be a switch statement branching on $err, which instead is branching on $?.

I've run betas, release candidates, and even the development branch of FreeBSD before, but 8-BETA2 is the first time I've ever had a FreeBSD install that feels like a beta. The merging done by freebsd-update seems completely broken; it prompted me for things it could have trivially done automatically, but failed to prompt me when it broke random system files. My system is now working again, but it's irritating to have to spend this much effort on an update.

PC Games (Games)

Journal Journal: Transcending the Frontier 1

Does anyone remember Frontier, a space trading game from the '90s? No, not that one, but a much lesser-known top-down game that only ran on Windows NT. It was released back in '95 and I found it a couple of years later when I was running NT 4 on my PC.

The game was incredibly addictive, but it was unfinished. The version I had was 0.5, and Altavista (this was a few years before Google) was unable to find a newer version. The gameplay owed a lot to games like Nethack. You started off in one solar system and then got to the next through a jump gate (analogous to descending to the next dungeon level). Over time, you'd upgrade your ship, with better shields and weapons, and progress further. Being a 0.5 release, there were a few things missing. The lack of sound was a shame, but the real killer was that there was no save system. You could play for an hour, then get hit by a stray nuclear warhead and have to start from the beginning. A game with so much potential, but it never went anywhere...

...or so I though. Over the weekend, some random googling turned up the author's web site and it turns out that he has recycled a lot of the ideas into a brand new game: Transcendence. This has a improved graphics, sound, and working savegames (nicely integrated into the game so they aren't a crutch). The story line is much expanded on Frontier (which was basically 'you are in space. Have fun') and the universe is much richer. Things I liked in the original, like the randomly-generated solar systems, the black market and the different possible gameplay styles are all still there, but now there is a rich backdrop and the player can choose to help the military, fight pirates, provide comet-grown food for expensive restaurants, or any combination.

There's one down side: It's still Windows-only, and I don't have a Windows machine anymore. Fortunately, it runs very well in WINE. I've playing it on the Mac in the free version of CrossOver Games that was released last year.

Oh, and if anyone's interested, you can still download Frontier 0.5. It does have one advantage over the newer game; the AI didn't have any sensible friendly-fire logic, so you could easily destroy (and loot) friendly space stations by getting one of the ships defending it to fire while docked. This was easy to do: just get the pirates to chase you there and when their stray shots hit the station all of the docked ships will launch firing. This works really well for the black market outpost, which is protected by very powerful ships and is full of fun technology to steal.

Toys

Journal Journal: WaveMate Jupiter II and Parts: Who wants some?

So, a while back, I got my hands on a Wavemate Jupiter II. Vintage 1975, wire-wrap cardcage construction in a 4u rackmount case. Unfortunately, I am now moving, and don't have the space or time to hang onto this rather charming object.

I feel really bad throwing away a computer older than I am, so I'm looking for a good home for it. System includes the Jupiter II, the external dual 8 inch floppy drive, and a whole bunch of system schematics and documentation. Both pieces of hardware power up; but only one of the power supplies is good(the power supplies are interchangeable). It is heavy and probably a bit fragile, so local(Boston, MA area) pickup would be best.

If you are interested, leave a comment. If you know anybody who might be interested, have them leave a comment. If you aren't local; but are just that interested, we might be able to work some sort of shipping out, though it isn't my preference(a "no Nigerian princes who need my help to get US 20 Million out of the country" rule is naturally in effect).
America Online

Journal Journal: How to fix the banking industry, in 5 minutes or less

Now that you have been suckered into reading this with a completely ludicrous subject line, I offer my insincere apologies. They are insincere because, after all, you are still reading...

I was sitting around the other day thinking about what a complex mess the US financial system is in these days. Just to really understand the whole issue, you have to do quite a bit of reading. It's pretty clear that the massive deregulation that occurred over the last twenty years is a complete failure. If you look at the models of economic thought, there seems to be a graphable range of options. On one extreem side of the spectrum you have complete lassier-fair economics without any market interference, and on the other side, a complete centrally controlled economy where everything is managed. A capitalist might favor the former, and a socialist would favor the latter.

I have always been of the opinion that rarely in life, when there seem to be choices that are presented in black and white, that the truth of the situation lies somewhere in the middle. Both schools of thought have pros and cons, and most societies seem to have adopted solutions that are sustainable and functional that incorporate elements of both. So what sort of solutions might have some benefits of both?

The deregulation of the banking industry over the last two decades seems to have allowed financial institutions greater freedom to pursue profit and growth, but at greater risk to their investors and the society as a whole. The basic problem is one of, how do you allow financial institutions the maximum possible flexibility in their activities, while regulating them in a simple efficient fashion so as to protect the country's financial system as a whole? These companies do not operate in a vacuum, and have a responsibility to grow their investor's money, but not at the expense of the greater system (especially since their investors probably exist within that financial system too.)

In thinking about the problems that seem to be plaging the country right now, I wonder if there might just be a simple solution that might alleviate similar future problems. It seems like many of the root causes surround the ability to sell debt. Many companies these days will issue credit to a borrower, and then sell that debt to a third party, allowing them to quickly recover their investment, make a quick buck, and be able to have more assets to loan to new borrowers. Now, having capitol available for borrowing is generally a good thing, as it facilitates economic growth in all sorts of ways. But, I wonder if some of the problems we are seeing are a result of having too much credit being available. By not having to retain possession of debt, companies are economically encouraged to acquire as much as possible, since it is, in essence an asset. The quality of credit becomes less of a concern, since the quantity is so great. This sort of behavior has lead to the problems of the sub-prime mortgage market, and the rampant availability of consumer credit. Nobody is too concerned with over-issuing of credit, because the problem will be sold off to another party.

If the selling of credit were completely prohibited, then any credit issuer would suddenly have a vested interest in making sure that any credit that it was issued was going to be paid back, and would result in the market correcting itself to some degree in its lending practices. I am not sure that the selling of debt actually generates any economic value, so while there would be a number of people upset over such a law, I don't think that it would affect the final economic bottom line, the basic production of commodities. I don't think that this would be a complete solution to all the problems that lead to existing quagmire, but it might be a simple step in the right direction.

Closing thought: I posted this under 'America Online' because it is about America, and you are online right now.
User Journal

Journal Journal: My positive contributions? Bwahahaha! 8

I got a new box on Slashdot this afternoon, thanking me for my 'positive contributions' and letting me turn off advertising because of them. Wait, there's advertising on the Internet now? When did that start?

User Journal

Journal Journal: Hey jcr, let's talk

So, what is your position on property ownership?
1.) Personal Property
I think, you work for it, it's yours. I help defend what you worked for from those who would take it unfairly, you do the same for me.
2.) Real Property
Natural resources should not be owned. If you are working an area, I'll ask if I can help and what the terms are before I help myself. If you claim an area you aren't working, I won't respect that unless you and I have made a personal deal to that regard. If someone tries to drive you from their land, I'll try to help you stop them, if you are willing to do the same for me.
3.) Intellectual Property
I'll always say where I got my ideas from. I'd like it if I could get some recognition for my good ideas.

Cooperation versus competition?
I think cooperation is almost always in an individual's self interest. Competition, of the form where some people have to 'lose' in order for others to win, is usually not in an individual's self interest, if it can be avoided.

Taking care of others?
I think desperate, frightened, hurt, or angry humans are the most dangerous thing on the planet. Making sure no one feels that way unnecessarily is in everyone's best interest. I resent people getting a free ride on the work some of us try to do making sure people aren't a danger due to desperation.

The free market?
A really good idea, in theory. However, a hybrid system where competition is balanced with cooperation is better for everyone. The benefits of such cooperation should be limited to other cooperators, and not extended to the ruthless and selfish.

That's a start.

Slashdot Top Deals

Thus spake the master programmer: "After three days without programming, life becomes meaningless." -- Geoffrey James, "The Tao of Programming"

Working...