IIRC, Mandrake splintered from RedHat over KDE, and then they decided to recompile for Pentium processors on top of that. So the user base was basically people who would be using RedHat, but are too cheap to pay full price for it, and wanted KDE (back in the day). Now it just seems to be targetted at beginners; I think much more of the system administration type stuff is handled by the combination of LinuxConf and whatever the current Mandrake configuration tool is called. Those are disgusting programs if you grew up hacking the files by hand, but hey...
As you said, the newbies really seem to love them. And I have to admit, having tried Slackware, Mandrake, Redhat, Debian (YUCK!), and SuSE, the only one I think I'd ever be happy with is Linux From Scratch.:) Someday when I have that much time on my hands maybe I'll give it a shot
we have proven Pi to be a transcendental number, which means two things:
It is non-repeating (eg. 1.293)
It is non-terminating (eg. 0.333...)
it can't contain itself and still be both non-repeating and non-terminating, because if it did, the point where the internal pi starts, pi is repeating. this is an omega + omega = omega kind of thing on the brain, but I think it's valid. if not, someone will surely mock me.:)
if not, here would be another argument. suppose you have a hotel with infinite rooms. every room is full tonight. then an infinite number of people show up and want rooms. so you put all the people who were there at first into the even rooms and all the people who just showed up into the odd rooms, because as it turns out, the cardinality of integers, odd integers, and even integers are the same (0th order infinity, IIRC).
this would mean that it would be legal for you to have an infinite number tacked onto the end of the same infinite number, adding up to an infinite number. but if we have that, then we basically have found "all" of pi, and we have found where it repeats. which you can't do, because then it wouldn't be transcendental anymore.:)
or perhaps I'm putting too much faith in our proof that it is transcendental. ? any mathemeticians want to fix my wagon?
I think the recursion problem you run into probably prevents it. But you never know...
of course, what I don't understand is this normality thing. After all, you can't really say "String X occurs more often than String Y in Pi," because you can't calculate exactly how many times a given string is in Pi. There are two reasons for this:
Every finite string is in Pi an infinite number of times.
You must be searching the first N digits of Pi, and it is entirely possible that the random distribution in the first N digits is different than that of the second N digits (duh).
It seems obvious to me that if every string is in Pi an infinite number of times, the normality can be considered proven.:) after all, if they prove it isn't normal, we can just snarf up a larger set of strings from Pi and prove that the distribution is something else.
Of course, since every string is in Pi an infinite number of times, there are also an infinite number of strings that almost match the string. So watch out as you're looking for an offset for Windows 98, you might get one with five bytes different, and the only difference is that it's called Macrosoft Office in one place. And then two, and three, or all occurances different. Or a bug-free version of Windows.
... or future versions of the Linux kernel...
this is no different than, say, burning every possible CD-R trying to find the one with the long lost Jimi Hendrix recordings on it. After all, it's digital; you could just permutate all the bits until you find the "right" one. Of course, by that time we've run out of space in the solar system and it would take longer than we have time in the universe to even just sort through them, let alone burn them. but it's an intriguing thought, no?:)
eh? how many 35+ year old professionals do you know? How many of them have skills that apply today? It takes more than a good suit, a snappy smile, and a mathematics degree to make it in this world today. Gasp--you actually need to know something and be willing to work. Students leaving my university are snapped up quick: not every CS degree involves writing a C compiler, Linux device drivers, cleanroom style coding, and database building. it's a hard curriculum, and people leave it destined for greatness it seems. an informal comparison I did one night showed many of the classes required for the degree at my college were master's level courses at other universities. master's students from other schools are often tutored at my school. By the undergraduates. of course, not having a single professor who's native language is English encourages an atmosphere of "do-it-yourself", that combined with the focus on Linux development pretty much guarantees that only the hardcore shall survive.:-D I've never been so proud of being average.
A good friend of mine, near and dear to my heart, has been in the industry for more than twenty years. But he was trained in Lisp programming; AI and computer linguistics. The demand in that particular field is non-existant. Instead of marketing himself as that, he markets himself as a UNIX/Linux sysadmin with 20+ years of experience. Which, while not unheard of, is certainly more useful in this day and age than LISP programmer or 4 year experienced Linux programmer. He has not been without a job for any significant amount of time, and always manages to bargain to get extra time off due to an illness.
There's no such thing as age discrimination. There's discrimination against stale skills. There's discrimination against outdated, outmoded technology. I'm not hiring a former VMS expert unless he can use my system (which isn't VMS). I'm not hiring a LISP programmer if my code is Python/Perl/C++.
The one thing the world is not tolerant of, in the information age, is experience for the sake of loyalty and not learning. we aren't building systems on an assembly line. Cisco certified network administrators who don't know bash are useless as sysadmins. I know one, and he knows that basic Linux skills are the mana from heaven as far as employers are concerned. then again I have another friend who insists that an EE degree in addition to your CS degree is yoru golden passport to any job you want at whatever salary you demand. Probably true, in some circles. but this is not an industry where loyalty is rewarded.
GNOME's just a desktop. It doesn't preclude VI or Emacs (don't get me started...) so I think your comment, "no open-source developer would even consider using Gnome..." to be somewhat uncalled for. After all, highly-paid developers might be able to afford workstations that make GNOME seem fast.;)
More to the point, I don't know why anyone would develop with.NET. Sounds like Microsoft's blowing smoke rings up our ass. No one that I listen to has yet said, "Look, here is an example of something cool you can do with.NET". Plenty of people are oooh-aahing over it and the capabilities, but that's meaningless. Think back to the last time MS hocked a developer's product that wasn't an IDE. Oh yeah---ActiveX! We all know how ActiveX changed the world. Except it didn't.
Passport sounds like a glorified version of PAM to me. Everyone who loves PAM raise your hand. *two people raise hands*
So the real question is, what Free Software developer is going to choose Mono? One can only hope that it would be a last-ditch effort to use anything besides windows.
I believe the Palm Pilot was based on 16MHz. Everything since the Palm III has been 33MHz, except the IIIc (the old color model), which for some reason was using a 20MHz dragonball.
As for performance variances, keep in mind you're comparing a desktop to a palmtop, when we know that desktop to laptop comparisons aren't even equal. Aside from that, and as pointed out before, the Graffiti recognition is a constant foreground process on the palmtop, whereas your Mac used conventional interfaces like a keyboard and mouse, which requires less calculation to interpret (if any at all). I'd also like to know how exactly you're comparing performance, since I'm unaware of any ports from Mac to Palm, and you can't be talking about the near-instant application load time of the Palm.
And some people think it's unfair to compare different RISC desktop CPUs!
Google sells a kind of ad: Sponsored Links, which come up before the first result, are commercial sites that pay google to put their result at the top of searches with certain keywords. This is not payola, Google makes it clear that the advertised result is separate from the other results.
Google also licenses the technology to other companies, as mentioned before. But most importantly, if you read here you can read all about their business model, including how they make money, and how they are owned by a large parent company which probably doesn't have to fear bankruptcy any time soon.
I used to think the same thing. But I've discovered that I can fall asleep to any non-interactive sound source, from Rammstein to the Lain: Cyberia soundtrack to Classical Thunder. Having the 75 mile route memorized, and it being basically unpatrolled by police officers late at night doesn't help either.
I've been lucky enough to escape actual death via sleeping at the wheel, or even an accident. I have a friend who wasn't so lucky; ruined the car and now pays through the roof for insurance (he's also under 18!).
Whenever I have to take my long drive, I try and find a passenger to keep me awake. Having an interaction with a virtual passenger would duplicate half of the effect, the interactive part (but not the fear of killing the passenger himself). I suppose the usefulness of the virtual passenger will be proportionate to the degree which it evolves and changes. But it sounds like something I could really use.
If I had moderator, I would have modded up this post.:)
But seriously, to reiterate what you've just said, who wants linux in a PDA? After using PalmOS extensively, I have to admit it is both shiny and extremely functional given the constraints. A palmtop is not a command-line environment. Multi-threading is not exactly high on my list when there's nothing important to be running in the background (MP3 player, compilation, terminal session... which of these do we actually do on a palmtop?).
So if the Linux environment is not desirable on the PDA it must just be the political "we want a free OS on everything" camp speaking up, or the rabid "Linux everywhere!" enthusiasts. I don't see the Agenda taking off; it's about a generation old hardware-wise, and such a niche that neither Palm developers nor WinCE developers will likely switch over and start writing apps there.
What must be annoying people is the fact that the Palm software market seems to be not too dissimilar from the Windows market: hundreds of powerful applications with difficult to explain purposes costing lots of money, and thousands of decent to crappy shareware and freeware products that do usually one or two things of utility. Linux applications by and large have a single purpose to which they're well-suited, well-crafted software. This is not the case in the Windows or PalmOS worlds. Check out download.com: there's 10 or more crummy editors, each with it's little gimmick. But there's only one Mp3 normalizing tool, and it sucks. When I left the palm market a year ago, there were four or five "launcher" programs, but only two Doc viewers (rather important), both nagware.
It's a moot point, I think. People who have used the platform will recognize that Palm has an advantage because they truly do craft a fine OS. Performance tweaking on a Palm is unlikely to be noticed except by palm gamers (a rare breed). Everything great about Linux is wasted on that environment except the freedom. Linux acceptance on this market is surely distant. The real crime is that the PRC tools are freely available on the Palm and there seems to be next to no GNU development on the non-free platform. Again, this is mirrored in the Windows world where the only GNU-licensed programs I can and do run are VIM, OpenRPG and WinJab.
I hate to be a walking endorsement, but there are a few tips I've come to w/ respect to programming.
Object orientation is necessary and natural. Beginners are often left wondering how the algorithm has anything to do with the "stuff" they're programming. Oversimplified lessons work to teach the bad habits of procedural programming ("If it works..."), often without fully explaining how results are arrived at, and leave most learners wanting.
C++ is not the best object-oriented language for beginners. I heartily recommend Python as an introductory language. It has the perfect combination of huge library and simple language. About the only way to muddy the water is to use functional programming constructs. Beginners don't need the complexity of C++.
After you learn Python, start in on Eiffel. I'm currently learning the principles of Eiffel, which are deep and worthy of application in the rest of the world, but it just goes to show you where complexity can get in your way. Eiffel is simple compared to C++: no "friend", no "inline", no "namespace", no "typedef", no "struct". But Eiffel works by removing complexities in the language. Find me a fully-implemented Standard C++ library. There are none. But there's four or five fully implemented Eiffel libraries, and only one Python library at all (which is massive). No beginner should have to worry about platform-dependance, library "issues" or bizarre compiler messages. C++ suffers from all of these faults. Eiffel and Python get out of the way, letting the programmer get right down to the problem and solve it. C++ throws in every possible language feature, putting it in competition with nothing but Ada. And while that does make a very powerful programming language, it also makes it unnecessarily complex for the learner.
No one should have to implement a basic container before knowing how to use it. This is a classic failing, mainly of C, that CS courses teach linked-lists and other datatype construction before the student understands the concept or how to use it. This is a big win for OOP in general, not having to re-implement the wheel constantly, yet colleges across the country feel that every student should understand such a "useful" concept in implementation terms first.
Daniel
Re:Less tran truthful advertising...
on
Why not Ruby?
·
· Score: 1
actually, at 1.5.2 we had UserList and UserDict, which would let you "inherit" from the List type or the Dictionary type. It wasn't actually inheritance, instead it was an often forgotten object oriented concept called delegation. (The main reason people forget about delegation is because C++ does not support it). The idea is this: you have a subobject (in this case, a list or a dictionary) and you delegate all function calls or data requests to the subobject if you do not implement them. It's really quite simple to implement:
and you can use this technique to pretend-inherit from any built in type. like I said, this feature is not supported in C++ so people have a tendancy to forget about it entirely. Of course, nowadays we can use UserList or UserDict (and with 2.0+, UserString) as a base for inheritance. All you have to remember is "self.data" is always going to be the string or list or dictionary you are emulating:
class mystring(UserString):
def __init__(self):
self.data = ""
will behave exactly like a string.
I'd like to see a good example of why one would want to inherit from integer or float before I'll understand why one would want that in the library.:)
I'd also like to see how one is supposed to use single-inheritance for any good if you can't use delegation either (Java, I believe).
Daniel
Re:I can tell you why *I* am not using Ruby.
on
Why not Ruby?
·
· Score: 1
I'm sort of surprised you didn't bring up the fact that Python supports multiple inheritance and Ruby does not. This is a key issue for me, though from what I have seen, Python's syntax is also much cleaner.
I can't speak against OCaml though; I'm in the midst of an Eiffel obsession. And it can boast clean code and good compilers. Too bad it seems to be under the thumb of the well-intentioned ISE.
This isn't a surprise to people who have seen the anime "Serial Experiments Lain", and have noted the "Be" in "To Be Continued" is red and blue, an exact copy of the Be Inc. logo. Most of the development resources I've come across for the Be Operating System are in Japanese or else dead links for English stuff.
Furthermore, editing Japanese text is quite simple in BeOS (says a foreigner;), as anyone who installed the small component in the Pro version would know.
They must mean they don't tell anyone but Alvin Cooper and Coralie R. Scherer.
Not necessarly. It could mean that they surveyed people at the Centre to find out what percentage downloaded porn, and got numbers that were 75% beneath the anticipated results (found by examining other surveys or surveying spouses or whatnot).
There are even experiments you can do in which you convince the participants that you already have the information, and you're just seeing if they'll be honest about it. These kinds of experiments sound outlandish but actually seem to work quite well (they've been used to determine that racism and sexism still exist, even though talking about either one except in humor is becoming taboo).
Try this:
[fusion@destroyer lzip]# cat lunzip
Goldfinger.
He's the man, the man with the midas touch.
A spider's touch.
Such a cold finger.
Beckons you to enter his web of sin
But don't go in.
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Mister Goldfinger.
Pretty girl beware of this heart of gold
This heart is cold.
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Mister Goldfinger.
Pretty girl beware of this heart of gold
This heart is cold.
He loves only gold,
Only gold.
He loves gold.
He loves only gold,
Only gold.
He loves gold.
lzip is in binary, but I don't know what kind. it could be garbage.
The main issue here is that GNOME is built on top of Xlib, X windows, etc. They have to write a lot of library code on top of existing library code in order to generate a useful system. Xlib isn't exactly forgiving, either.
That said, (and as a BeOS plug) Be is faster, more powerful, and smaller. It's also less themeable (I'm running it now, everything can be one color or another, but no pixmaps, and certainly no engines). As far as GNOME itself is concerned, I don't know exactly what the bulk is except that the libraries let you do lots of stuff without a lot of code. BeOS is fairly direct by comparison.
Daniel
Re:KDE: one of the most successful OSS projects
on
KDE 2.1 Is Out
·
· Score: 1
GNOME may not be short on apps, but I must give KDE props for two reasons:
Development for KDE doesn't suck (try writing logical GTK!)
The whole thing is much cleaner in its integration.
While ease of development probably doesn't factor into why most people who use KDE use it, it is a big part of why I use it (and I use everything from GNOME w/ Sawfish to Enlightenment to FVWM2 depending on my mood). But there's no denying that KDE feels more polished and is at least as well integrated. I can't count the number of times Bug Buddy has popped up to notify me that something's crashed, and I hate the way my console windows get hosed with GTK Assertion Failed! messages. The simple fact that QT builds the interface before showing it makes it feel less rickety than GTK which doesn't yet use a framebuffer (but they're working on it).
Personally, I'm glad everone involved hates each other. In my opinion, this kind of "friendly" competition will do tons more for the software than corporate competition ever could.
Actually, if security is your #1 concern, OpenBSD is your best candidate. Speed appears to be the FreeBSD specialty.
Also, consider QNX if you are looking for embedded technology or real-time operating systems. (it's FAST!) Try their 1.44 MB floppy---it boots up, presents a GUI, a modem-detector, a webbrowser with Java, and a few games!
If you're looking for an OS to tinker with, consider playing with Atheos, which is similar to BeOS in design (C++ object-oriented desktop operating system). I'm interested in supporting this project myself at some point when I have free time again.
As for myself, I run BeOS, FreeBSD and sometimes QNX on my personal box, with an OpenBSD server/firewall right next to it. I find that OpenBSD puts the network first all the time; Linux-using friends of mine commented once that they tried to burden it and found that it was serving X windows applications faster than their computer could keep up. This is a Pentium 233 w/ 128 MB ram and a 27.2 GB hard drive we're talking about, not the Athlon 750s with 256 MB of RAM my friends are using. And that's in addition to serving Samba, Squid (1GB!), FTP and SSH all at once. OpenBSD's in-fucking-credible. Mad props to Theo, the man is my God.
For my desktop though I'm mainly running BeOS because it pretty much does everything I need in a box that's not quite as network-aware as I would like (smb's manual still, X isn't supported in a real way yet). But it's a snappy interface that can multitask like you wouldn't believe, incredibly efficient and beautifully designed. Coding for it is fun too. It's all you could ask for, except for improved networking which is in the works and perhaps some UNIX odds and ends, like X support or serving. It's not a server OS. It's a desktop.
QNX would be fun if they would supply more packages with it. Lots of UNIX doesn't seem to compile right under it though; I'm not sure what the problem is, because QNX is considered a UNIX more so than BeOS and it has more problems compiling POSIX code. All I know is, QNX is the fastest UNIX on the planet, it feels like it's got to be at least 95% assembly to be so damn fast! And it has a fairly rich API for the GUI (Photon), though it is C-based.
OS's are somewhat of a hobby of mine; I'm downloading Solaris 8 Intel as we speak to try it out. I would say that the worst thing you can do is get stuck in a rut, unwilling to try anything out. I was a Linux-Mandrake devotee for a long time before last year; since then I just got sick of seeing the same screen all the time. More knowledge is necessarily better; I have complete config files for blackbox, AfterStep, and FVWM2, also used Sawfish/GNOME for a bit. Always try new things; the OS world is richer now than it has been in years thanks to the free software movement. Don't become a zealot if you can help it; it stops you from being open-minded.
I doubt an alien civilization is going to broadcast the most complex way possible if it wants to find people. Chances are if they're using complex algorithmic frequency hopping or encryption, they aren't broadcasting "Hi, here's our basic math system" anyway.
my best objection to this is simply that the people who would be handing out the licenses are the people we trust the least with technology - the government.
Consider this: who is purchasing the lion's share of the internet censorship software? Morons in the government who want to lock down libraries and public schools, the two places where free flow of information is the most important.
Who are the people backing ridiculous technology patents? Why, the people with the least understanding of the technology involved: the patent office. One-click, anyone?
Sure, let's let the most technologically incompetant people in the country with their own line to push decide who is and who isn't worthy of being online. Goodbye everything interesting and different, hello network TV.
My roommate has been having nothing but trouble. He's tried 2000 three times in the last week. The first timehe installed it, he was getting kernel crashes every time he was doing more than one thing at a time. The update fixed it for about a week (in which it worked fine) after which the in-game menu of Diablo II was causing explorer to crash, bringing down the system.
The second time he installed, it detected the wrong network card during setup, and the when it wanted to find the file on the CD, clicking "OK" failed to do anything after finding it and selecting it. Install proceeded with about fifty "Find this file" dialogs for various important system files, and the install was totally unstable and useless. He tried again immediately and had the same problem. After some reflection, he formatted the hard drive with Partition Magic, like he had before the first install, and tried again.
Go three was a lot like round one, and he's getting a little tired of having to install it over and over again.
Ironically, the fellow down the hall who recommended 2000 so much has had very few problems with it. He has a relatively newer system, but it did peter out and have to be reinstalled after three months of normal usage (not hacker/gamer usage like my roommate).
So I've gotten some pretty mixed results with it. I guess what I'd say is that the stuff they fixed works better than it used to. But the stuff they didn't fix is worse than ever. For the people it dies on, windows dies quickly, and frustratingly without any means of fixing it. For the people it works with, it works better than 98 by quite a bit, but not better than NT 4.0. Sort of like NT for gamers.
Then again, I've had the same luck with Linux these days! *All* of the 7.0+ distros seem to be totally fucked! They're getting bigger and flashier and they're still relying on the same crufty perl code at the bottom layer---unforgiving code that wasn't meant to be deployed like this. Mandrake started sucking around 7.1, Redhat around 7.0, and Slackware's always been for a different mindset than my own. I'm using two boxes myself, BeOS and OpenBSD.
You see, Linux was originally just supposed to do UNIX. It was growing up to be a server OS, I'm speculating because hackers wanted to play games on Windows and then hack or serve with something else, something cheap and powerful yet tinkerable. Now the direction has changed, with GIMP and GNOME and we're trying to slap a happy user-friendly face on something only a hacker would call pretty. If I could, I'd go back to Redhat 5.2, or Mandrake 5.3; that's the real era of Linux domination. MS is moving everywhere at once, failing to attack Linux effectively, yet Linux seems to be moving decidedly onto the desktop where it does not belong.
GNOME is massive and disgusting. It frightens me to hear people claiming it's a standard and that it's better than KDE. Last time I downloaded GNOME, it relied on some 100 packages. KDE requires a toolkit.
Moving the complexity of the computer to the administrator does not make it disappear. Users who are unable to cope with Windows are still unable to cope with Linux because the pretty face doesn't do everything for you! Root is still there, along with all the logging and the services, and if you pretend that a pretty shell for it will make it easier, you're deluding yourself.
If you wanted power, you should be using OpenBSD. Take a look at the interview with Theo, my fuckin' hero! There's a man who's not interested in fucking around, he just wants to get the job done. He's not interested in writing a book about how great it is, he's not interested in what you do with it, he just wants to get the code done and clean. Personal testimonial: it boots faster than Windows on a new install with all services running, it's snappier than Potato was, after I hacked away at it for weeks, and it just plain gets the job done.
Best advice for anyone: figure out what you want to do, and the best way to do it. A Linux server/desktop or a windows server/desktop may be the best of both worlds, but it is king in neither.
BeOS uses some insane level of threading (every app that draws a window has *at least* two threads). As far as I know, it checks the load on a given processor when it decides which one to stick a thread on. It's a given fact that with existing SMP boards that it supports, it is the most efficient OS on the market (it uses close to 95% of both processors IIRC, because everything has threads and the kernel moves threads onto different processors rigorously). Therefore, I would expect BeOS to perform best under that setup, followed by Linux (I think 85%, but I'm probably making it up).
Of all the OS's you could install, NT does worst, as apps have to be coded to reach out to the second processor and put a thread there.
2) that's like saying "your friend's votes don't count either"
3) when I bought Civ:CTP, it *was* a political statement. the game sucks, the game sucked before it was ported, and the game performed poorly under linux. the BETA version for BeOS performs better on my exact same system. of course, that might be because BeOS is really nice.
4) I fail to see what's extraordinary about the claim that Linux has a larger base than MacOS. it certainly has captured the developer / server market nicely. and that is a significant portion, regardless of your mental conception of who matters.
5) not everyone who uses Linux to serve/develop DOESN'T use it for desktop apps as well. not everyone can afford an extra box just to serve.
I suppose LaTeX probably doesn't count as a "productivity app" even though everyone whose seen the reports I've produced with it marvelled at how consistent, readable, and "professional-looking" they are.
6) that's nice
7) if the market's so small, how is it that I've been using Linux for three years, and seen nothing but explosive growth? And what's the difference between a small market and an emerging market? You can make a lot more money by having a product available when the emerging market gets big, instead of waiting for it to get big before you start development.
I prefer 10 really well done OS's, with integrated windowing systems (or not), integrated tools, integrated compilers and preferred languages, to a single OS with 10 shoddy tools and unintelligible, poor windowing systems or languages.
The UNIX philosophy is, here's a bunch of tools; use the ones you like. My philosophy is, when I want to use C++, whip out BeOS. When I want to use Obj. C, use NeXTStep. When I want to use GTK/Gnome, use Linux. And I don't think you're being honest if you really believe that there's tool equivalence in UNIX, or windowing system choices for that matter. We have only X, and you're a minority if you program in anything besides the dynamic duo of C and Perl.
Ultimately, we're all better off if individuals with visions get up and make interesting, unique systems *for themselves*. GNOME is neat, but Gtk-- is wacky. And nothing works as fast as Xlib under X---and that's the way it should be.
Supposing that we can or should have everything under the sun in one broad "OS" is foolish. It's better to do one thing and do it well. This was also a UNIX philosophy at one time. Now, instead, we have dozens of things which do the same thing equally well in one OS. We have conflicting axioms here. All I'm saying is we should step back and notice that, in a way, diversity has gone up, not down. Look at it from the OS market perspective rather than the UNIX perspective, and we have a large set of thriving possibilities, and no one is being forced to do anything.
Moreover, the OS line is getting blurier. Originally, we had a process and hardware. Then we made the UNIX kernel and shell to interact with the user and and the hardware as a sort of middleman. The point of the article is just to say that we now have bodies of processes which are interacting with intermediary agents before even hitting the kernel. The BeOS concept: have about ten servers between the user and the kernel. Is the Media Server part of the OS? Well, it's not in the kernel. But if it isn't running, you aren't going to hear any sound or see any video. Is the Application Server part of the OS? Again, it's not in the kernel. But if it's not running, you aren't going to be able to make any windows.
I think we would do better to stop using the term OS when dealing with modern computers. The term used to have meaning, but it clearly doesn't any more. What we are dealing with now is the hardware interface (the kernel), the device interface(s), the network interface, and the user interface. Using only the user interface, we have only things that create or modify data of some kind within themselves. But if you're serving or retrieving data across the network, you're using a network interface. if you're printing or playing a 3D game, you're using a device or the hardware interface.
Modern computers are much more complicated than they used to be!
IIRC, Mandrake splintered from RedHat over KDE, and then they decided to recompile for Pentium processors on top of that. So the user base was basically people who would be using RedHat, but are too cheap to pay full price for it, and wanted KDE (back in the day). Now it just seems to be targetted at beginners; I think much more of the system administration type stuff is handled by the combination of LinuxConf and whatever the current Mandrake configuration tool is called. Those are disgusting programs if you grew up hacking the files by hand, but hey...
:) Someday when I have that much time on my hands maybe I'll give it a shot
As you said, the newbies really seem to love them. And I have to admit, having tried Slackware, Mandrake, Redhat, Debian (YUCK!), and SuSE, the only one I think I'd ever be happy with is Linux From Scratch.
Daniel
we have proven Pi to be a transcendental number, which means two things:
it can't contain itself and still be both non-repeating and non-terminating, because if it did, the point where the internal pi starts, pi is repeating. this is an omega + omega = omega kind of thing on the brain, but I think it's valid. if not, someone will surely mock me.
if not, here would be another argument. suppose you have a hotel with infinite rooms. every room is full tonight. then an infinite number of people show up and want rooms. so you put all the people who were there at first into the even rooms and all the people who just showed up into the odd rooms, because as it turns out, the cardinality of integers, odd integers, and even integers are the same (0th order infinity, IIRC).
this would mean that it would be legal for you to have an infinite number tacked onto the end of the same infinite number, adding up to an infinite number. but if we have that, then we basically have found "all" of pi, and we have found where it repeats. which you can't do, because then it wouldn't be transcendental anymore.
or perhaps I'm putting too much faith in our proof that it is transcendental. ? any mathemeticians want to fix my wagon?
Daniel
of course, what I don't understand is this normality thing. After all, you can't really say "String X occurs more often than String Y in Pi," because you can't calculate exactly how many times a given string is in Pi. There are two reasons for this:
It seems obvious to me that if every string is in Pi an infinite number of times, the normality can be considered proven.
Of course, since every string is in Pi an infinite number of times, there are also an infinite number of strings that almost match the string. So watch out as you're looking for an offset for Windows 98, you might get one with five bytes different, and the only difference is that it's called Macrosoft Office in one place. And then two, and three, or all occurances different. Or a bug-free version of Windows.
... or future versions of the Linux kernel
this is no different than, say, burning every possible CD-R trying to find the one with the long lost Jimi Hendrix recordings on it. After all, it's digital; you could just permutate all the bits until you find the "right" one. Of course, by that time we've run out of space in the solar system and it would take longer than we have time in the universe to even just sort through them, let alone burn them. but it's an intriguing thought, no?
Daniel
eh? how many 35+ year old professionals do you know? How many of them have skills that apply today? It takes more than a good suit, a snappy smile, and a mathematics degree to make it in this world today. Gasp--you actually need to know something and be willing to work. Students leaving my university are snapped up quick: not every CS degree involves writing a C compiler, Linux device drivers, cleanroom style coding, and database building. it's a hard curriculum, and people leave it destined for greatness it seems. an informal comparison I did one night showed many of the classes required for the degree at my college were master's level courses at other universities. master's students from other schools are often tutored at my school. By the undergraduates. of course, not having a single professor who's native language is English encourages an atmosphere of "do-it-yourself", that combined with the focus on Linux development pretty much guarantees that only the hardcore shall survive. :-D I've never been so proud of being average.
A good friend of mine, near and dear to my heart, has been in the industry for more than twenty years. But he was trained in Lisp programming; AI and computer linguistics. The demand in that particular field is non-existant. Instead of marketing himself as that, he markets himself as a UNIX/Linux sysadmin with 20+ years of experience. Which, while not unheard of, is certainly more useful in this day and age than LISP programmer or 4 year experienced Linux programmer. He has not been without a job for any significant amount of time, and always manages to bargain to get extra time off due to an illness.
There's no such thing as age discrimination. There's discrimination against stale skills. There's discrimination against outdated, outmoded technology. I'm not hiring a former VMS expert unless he can use my system (which isn't VMS). I'm not hiring a LISP programmer if my code is Python/Perl/C++.
The one thing the world is not tolerant of, in the information age, is experience for the sake of loyalty and not learning. we aren't building systems on an assembly line. Cisco certified network administrators who don't know bash are useless as sysadmins. I know one, and he knows that basic Linux skills are the mana from heaven as far as employers are concerned. then again I have another friend who insists that an EE degree in addition to your CS degree is yoru golden passport to any job you want at whatever salary you demand. Probably true, in some circles. but this is not an industry where loyalty is rewarded.
Daniel
GNOME's just a desktop. It doesn't preclude VI or Emacs (don't get me started...) so I think your comment, "no open-source developer would even consider using Gnome..." to be somewhat uncalled for. After all, highly-paid developers might be able to afford workstations that make GNOME seem fast. ;)
.NET. Sounds like Microsoft's blowing smoke rings up our ass. No one that I listen to has yet said, "Look, here is an example of something cool you can do with .NET". Plenty of people are oooh-aahing over it and the capabilities, but that's meaningless. Think back to the last time MS hocked a developer's product that wasn't an IDE. Oh yeah---ActiveX! We all know how ActiveX changed the world. Except it didn't.
More to the point, I don't know why anyone would develop with
Passport sounds like a glorified version of PAM to me. Everyone who loves PAM raise your hand. *two people raise hands*
So the real question is, what Free Software developer is going to choose Mono? One can only hope that it would be a last-ditch effort to use anything besides windows.
Daniel
I believe the Palm Pilot was based on 16MHz. Everything since the Palm III has been 33MHz, except the IIIc (the old color model), which for some reason was using a 20MHz dragonball.
As for performance variances, keep in mind you're comparing a desktop to a palmtop, when we know that desktop to laptop comparisons aren't even equal. Aside from that, and as pointed out before, the Graffiti recognition is a constant foreground process on the palmtop, whereas your Mac used conventional interfaces like a keyboard and mouse, which requires less calculation to interpret (if any at all). I'd also like to know how exactly you're comparing performance, since I'm unaware of any ports from Mac to Palm, and you can't be talking about the near-instant application load time of the Palm.
And some people think it's unfair to compare different RISC desktop CPUs!
Daniel
Google sells a kind of ad: Sponsored Links, which come up before the first result, are commercial sites that pay google to put their result at the top of searches with certain keywords. This is not payola, Google makes it clear that the advertised result is separate from the other results.
Google also licenses the technology to other companies, as mentioned before. But most importantly, if you read here you can read all about their business model, including how they make money, and how they are owned by a large parent company which probably doesn't have to fear bankruptcy any time soon.
I used to think the same thing. But I've discovered that I can fall asleep to any non-interactive sound source, from Rammstein to the Lain: Cyberia soundtrack to Classical Thunder. Having the 75 mile route memorized, and it being basically unpatrolled by police officers late at night doesn't help either.
I've been lucky enough to escape actual death via sleeping at the wheel, or even an accident. I have a friend who wasn't so lucky; ruined the car and now pays through the roof for insurance (he's also under 18!).
Whenever I have to take my long drive, I try and find a passenger to keep me awake. Having an interaction with a virtual passenger would duplicate half of the effect, the interactive part (but not the fear of killing the passenger himself). I suppose the usefulness of the virtual passenger will be proportionate to the degree which it evolves and changes. But it sounds like something I could really use.
Daniel
If I had moderator, I would have modded up this post. :)
But seriously, to reiterate what you've just said, who wants linux in a PDA? After using PalmOS extensively, I have to admit it is both shiny and extremely functional given the constraints. A palmtop is not a command-line environment. Multi-threading is not exactly high on my list when there's nothing important to be running in the background (MP3 player, compilation, terminal session... which of these do we actually do on a palmtop?).
So if the Linux environment is not desirable on the PDA it must just be the political "we want a free OS on everything" camp speaking up, or the rabid "Linux everywhere!" enthusiasts. I don't see the Agenda taking off; it's about a generation old hardware-wise, and such a niche that neither Palm developers nor WinCE developers will likely switch over and start writing apps there.
What must be annoying people is the fact that the Palm software market seems to be not too dissimilar from the Windows market: hundreds of powerful applications with difficult to explain purposes costing lots of money, and thousands of decent to crappy shareware and freeware products that do usually one or two things of utility. Linux applications by and large have a single purpose to which they're well-suited, well-crafted software. This is not the case in the Windows or PalmOS worlds. Check out download.com: there's 10 or more crummy editors, each with it's little gimmick. But there's only one Mp3 normalizing tool, and it sucks. When I left the palm market a year ago, there were four or five "launcher" programs, but only two Doc viewers (rather important), both nagware.
It's a moot point, I think. People who have used the platform will recognize that Palm has an advantage because they truly do craft a fine OS. Performance tweaking on a Palm is unlikely to be noticed except by palm gamers (a rare breed). Everything great about Linux is wasted on that environment except the freedom. Linux acceptance on this market is surely distant. The real crime is that the PRC tools are freely available on the Palm and there seems to be next to no GNU development on the non-free platform. Again, this is mirrored in the Windows world where the only GNU-licensed programs I can and do run are VIM, OpenRPG and WinJab.
Daniel
Daniel
actually, at 1.5.2 we had UserList and UserDict, which would let you "inherit" from the List type or the Dictionary type. It wasn't actually inheritance, instead it was an often forgotten object oriented concept called delegation. (The main reason people forget about delegation is because C++ does not support it). The idea is this: you have a subobject (in this case, a list or a dictionary) and you delegate all function calls or data requests to the subobject if you do not implement them. It's really quite simple to implement:
:)
class mylist:
def __getattr__(self, name):
return getattr(self.data, name)
def __init__(self):
self.data = []
and you can use this technique to pretend-inherit from any built in type. like I said, this feature is not supported in C++ so people have a tendancy to forget about it entirely. Of course, nowadays we can use UserList or UserDict (and with 2.0+, UserString) as a base for inheritance. All you have to remember is "self.data" is always going to be the string or list or dictionary you are emulating:
class mystring(UserString):
def __init__(self):
self.data = ""
will behave exactly like a string.
I'd like to see a good example of why one would want to inherit from integer or float before I'll understand why one would want that in the library.
I'd also like to see how one is supposed to use single-inheritance for any good if you can't use delegation either (Java, I believe).
Daniel
I'm sort of surprised you didn't bring up the fact that Python supports multiple inheritance and Ruby does not. This is a key issue for me, though from what I have seen, Python's syntax is also much cleaner.
I can't speak against OCaml though; I'm in the midst of an Eiffel obsession. And it can boast clean code and good compilers. Too bad it seems to be under the thumb of the well-intentioned ISE.
Daniel
This isn't a surprise to people who have seen the anime "Serial Experiments Lain", and have noted the "Be" in "To Be Continued" is red and blue, an exact copy of the Be Inc. logo. Most of the development resources I've come across for the Be Operating System are in Japanese or else dead links for English stuff.
;), as anyone who installed the small component in the Pro version would know.
Furthermore, editing Japanese text is quite simple in BeOS (says a foreigner
Daniel
They must mean they don't tell anyone but Alvin Cooper and Coralie R. Scherer.
Not necessarly. It could mean that they surveyed people at the Centre to find out what percentage downloaded porn, and got numbers that were 75% beneath the anticipated results (found by examining other surveys or surveying spouses or whatnot).
There are even experiments you can do in which you convince the participants that you already have the information, and you're just seeing if they'll be honest about it. These kinds of experiments sound outlandish but actually seem to work quite well (they've been used to determine that racism and sexism still exist, even though talking about either one except in humor is becoming taboo).
Daniel
Try this:
[fusion@destroyer lzip]# cat lunzip
Goldfinger.
He's the man, the man with the midas touch.
A spider's touch.
Such a cold finger.
Beckons you to enter his web of sin
But don't go in.
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Mister Goldfinger.
Pretty girl beware of this heart of gold
This heart is cold.
Golden words he will pour in your ear,
But his lies can't disguise what you fear,
For a golden girl knows when he's kissed her,
It's the kiss of death from
Mister Goldfinger.
Pretty girl beware of this heart of gold
This heart is cold.
He loves only gold,
Only gold.
He loves gold.
He loves only gold,
Only gold.
He loves gold.
lzip is in binary, but I don't know what kind. it could be garbage.
Daniel
The main issue here is that GNOME is built on top of Xlib, X windows, etc. They have to write a lot of library code on top of existing library code in order to generate a useful system. Xlib isn't exactly forgiving, either.
That said, (and as a BeOS plug) Be is faster, more powerful, and smaller. It's also less themeable (I'm running it now, everything can be one color or another, but no pixmaps, and certainly no engines). As far as GNOME itself is concerned, I don't know exactly what the bulk is except that the libraries let you do lots of stuff without a lot of code. BeOS is fairly direct by comparison.
Daniel
While ease of development probably doesn't factor into why most people who use KDE use it, it is a big part of why I use it (and I use everything from GNOME w/ Sawfish to Enlightenment to FVWM2 depending on my mood). But there's no denying that KDE feels more polished and is at least as well integrated. I can't count the number of times Bug Buddy has popped up to notify me that something's crashed, and I hate the way my console windows get hosed with GTK Assertion Failed! messages. The simple fact that QT builds the interface before showing it makes it feel less rickety than GTK which doesn't yet use a framebuffer (but they're working on it).
Personally, I'm glad everone involved hates each other. In my opinion, this kind of "friendly" competition will do tons more for the software than corporate competition ever could.
Daniel
Also, consider QNX if you are looking for embedded technology or real-time operating systems. (it's FAST!) Try their 1.44 MB floppy---it boots up, presents a GUI, a modem-detector, a webbrowser with Java, and a few games!
If you're looking for an OS to tinker with, consider playing with Atheos, which is similar to BeOS in design (C++ object-oriented desktop operating system). I'm interested in supporting this project myself at some point when I have free time again.
As for myself, I run BeOS, FreeBSD and sometimes QNX on my personal box, with an OpenBSD server/firewall right next to it. I find that OpenBSD puts the network first all the time; Linux-using friends of mine commented once that they tried to burden it and found that it was serving X windows applications faster than their computer could keep up. This is a Pentium 233 w/ 128 MB ram and a 27.2 GB hard drive we're talking about, not the Athlon 750s with 256 MB of RAM my friends are using. And that's in addition to serving Samba, Squid (1GB!), FTP and SSH all at once. OpenBSD's in-fucking-credible. Mad props to Theo, the man is my God.
For my desktop though I'm mainly running BeOS because it pretty much does everything I need in a box that's not quite as network-aware as I would like (smb's manual still, X isn't supported in a real way yet). But it's a snappy interface that can multitask like you wouldn't believe, incredibly efficient and beautifully designed. Coding for it is fun too. It's all you could ask for, except for improved networking which is in the works and perhaps some UNIX odds and ends, like X support or serving. It's not a server OS. It's a desktop.
QNX would be fun if they would supply more packages with it. Lots of UNIX doesn't seem to compile right under it though; I'm not sure what the problem is, because QNX is considered a UNIX more so than BeOS and it has more problems compiling POSIX code. All I know is, QNX is the fastest UNIX on the planet, it feels like it's got to be at least 95% assembly to be so damn fast! And it has a fairly rich API for the GUI (Photon), though it is C-based.
OS's are somewhat of a hobby of mine; I'm downloading Solaris 8 Intel as we speak to try it out. I would say that the worst thing you can do is get stuck in a rut, unwilling to try anything out. I was a Linux-Mandrake devotee for a long time before last year; since then I just got sick of seeing the same screen all the time. More knowledge is necessarily better; I have complete config files for blackbox, AfterStep, and FVWM2, also used Sawfish/GNOME for a bit. Always try new things; the OS world is richer now than it has been in years thanks to the free software movement. Don't become a zealot if you can help it; it stops you from being open-minded.
Daniel
I doubt an alien civilization is going to broadcast the most complex way possible if it wants to find people. Chances are if they're using complex algorithmic frequency hopping or encryption, they aren't broadcasting "Hi, here's our basic math system" anyway.
Daniel
my best objection to this is simply that the people who would be handing out the licenses are the people we trust the least with technology - the government.
Consider this: who is purchasing the lion's share of the internet censorship software? Morons in the government who want to lock down libraries and public schools, the two places where free flow of information is the most important.
Who are the people backing ridiculous technology patents? Why, the people with the least understanding of the technology involved: the patent office. One-click, anyone?
Sure, let's let the most technologically incompetant people in the country with their own line to push decide who is and who isn't worthy of being online. Goodbye everything interesting and different, hello network TV.
Daniel
My roommate has been having nothing but trouble. He's tried 2000 three times in the last week. The first timehe installed it, he was getting kernel crashes every time he was doing more than one thing at a time. The update fixed it for about a week (in which it worked fine) after which the in-game menu of Diablo II was causing explorer to crash, bringing down the system.
The second time he installed, it detected the wrong network card during setup, and the when it wanted to find the file on the CD, clicking "OK" failed to do anything after finding it and selecting it. Install proceeded with about fifty "Find this file" dialogs for various important system files, and the install was totally unstable and useless. He tried again immediately and had the same problem. After some reflection, he formatted the hard drive with Partition Magic, like he had before the first install, and tried again.
Go three was a lot like round one, and he's getting a little tired of having to install it over and over again.
Ironically, the fellow down the hall who recommended 2000 so much has had very few problems with it. He has a relatively newer system, but it did peter out and have to be reinstalled after three months of normal usage (not hacker/gamer usage like my roommate).
So I've gotten some pretty mixed results with it. I guess what I'd say is that the stuff they fixed works better than it used to. But the stuff they didn't fix is worse than ever. For the people it dies on, windows dies quickly, and frustratingly without any means of fixing it. For the people it works with, it works better than 98 by quite a bit, but not better than NT 4.0. Sort of like NT for gamers.
Then again, I've had the same luck with Linux these days! *All* of the 7.0+ distros seem to be totally fucked! They're getting bigger and flashier and they're still relying on the same crufty perl code at the bottom layer---unforgiving code that wasn't meant to be deployed like this. Mandrake started sucking around 7.1, Redhat around 7.0, and Slackware's always been for a different mindset than my own. I'm using two boxes myself, BeOS and OpenBSD.
You see, Linux was originally just supposed to do UNIX. It was growing up to be a server OS, I'm speculating because hackers wanted to play games on Windows and then hack or serve with something else, something cheap and powerful yet tinkerable. Now the direction has changed, with GIMP and GNOME and we're trying to slap a happy user-friendly face on something only a hacker would call pretty. If I could, I'd go back to Redhat 5.2, or Mandrake 5.3; that's the real era of Linux domination. MS is moving everywhere at once, failing to attack Linux effectively, yet Linux seems to be moving decidedly onto the desktop where it does not belong.
GNOME is massive and disgusting. It frightens me to hear people claiming it's a standard and that it's better than KDE. Last time I downloaded GNOME, it relied on some 100 packages. KDE requires a toolkit.
Moving the complexity of the computer to the administrator does not make it disappear. Users who are unable to cope with Windows are still unable to cope with Linux because the pretty face doesn't do everything for you! Root is still there, along with all the logging and the services, and if you pretend that a pretty shell for it will make it easier, you're deluding yourself.
If you wanted power, you should be using OpenBSD. Take a look at the interview with Theo, my fuckin' hero! There's a man who's not interested in fucking around, he just wants to get the job done. He's not interested in writing a book about how great it is, he's not interested in what you do with it, he just wants to get the code done and clean. Personal testimonial: it boots faster than Windows on a new install with all services running, it's snappier than Potato was, after I hacked away at it for weeks, and it just plain gets the job done.
Best advice for anyone: figure out what you want to do, and the best way to do it. A Linux server/desktop or a windows server/desktop may be the best of both worlds, but it is king in neither.
Daniel
BeOS uses some insane level of threading (every app that draws a window has *at least* two threads). As far as I know, it checks the load on a given processor when it decides which one to stick a thread on. It's a given fact that with existing SMP boards that it supports, it is the most efficient OS on the market (it uses close to 95% of both processors IIRC, because everything has threads and the kernel moves threads onto different processors rigorously). Therefore, I would expect BeOS to perform best under that setup, followed by Linux (I think 85%, but I'm probably making it up).
Of all the OS's you could install, NT does worst, as apps have to be coded to reach out to the second processor and put a thread there.
Daniel
1) that's like saying "your vote doesn't count"
2) that's like saying "your friend's votes don't count either"
3) when I bought Civ:CTP, it *was* a political statement. the game sucks, the game sucked before it was ported, and the game performed poorly under linux. the BETA version for BeOS performs better on my exact same system. of course, that might be because BeOS is really nice.
4) I fail to see what's extraordinary about the claim that Linux has a larger base than MacOS. it certainly has captured the developer / server market nicely. and that is a significant portion, regardless of your mental conception of who matters.
5) not everyone who uses Linux to serve/develop DOESN'T use it for desktop apps as well. not everyone can afford an extra box just to serve.
I suppose LaTeX probably doesn't count as a "productivity app" even though everyone whose seen the reports I've produced with it marvelled at how consistent, readable, and "professional-looking" they are.
6) that's nice
7) if the market's so small, how is it that I've been using Linux for three years, and seen nothing but explosive growth? And what's the difference between a small market and an emerging market? You can make a lot more money by having a product available when the emerging market gets big, instead of waiting for it to get big before you start development.
I agree with you. Ten options is better.
BUT...
I prefer 10 really well done OS's, with integrated windowing systems (or not), integrated tools, integrated compilers and preferred languages, to a single OS with 10 shoddy tools and unintelligible, poor windowing systems or languages.
The UNIX philosophy is, here's a bunch of tools; use the ones you like. My philosophy is, when I want to use C++, whip out BeOS. When I want to use Obj. C, use NeXTStep. When I want to use GTK/Gnome, use Linux. And I don't think you're being honest if you really believe that there's tool equivalence in UNIX, or windowing system choices for that matter. We have only X, and you're a minority if you program in anything besides the dynamic duo of C and Perl.
Ultimately, we're all better off if individuals with visions get up and make interesting, unique systems *for themselves*. GNOME is neat, but Gtk-- is wacky. And nothing works as fast as Xlib under X---and that's the way it should be.
Supposing that we can or should have everything under the sun in one broad "OS" is foolish. It's better to do one thing and do it well. This was also a UNIX philosophy at one time. Now, instead, we have dozens of things which do the same thing equally well in one OS. We have conflicting axioms here. All I'm saying is we should step back and notice that, in a way, diversity has gone up, not down. Look at it from the OS market perspective rather than the UNIX perspective, and we have a large set of thriving possibilities, and no one is being forced to do anything.
Moreover, the OS line is getting blurier. Originally, we had a process and hardware. Then we made the UNIX kernel and shell to interact with the user and and the hardware as a sort of middleman. The point of the article is just to say that we now have bodies of processes which are interacting with intermediary agents before even hitting the kernel. The BeOS concept: have about ten servers between the user and the kernel. Is the Media Server part of the OS? Well, it's not in the kernel. But if it isn't running, you aren't going to hear any sound or see any video. Is the Application Server part of the OS? Again, it's not in the kernel. But if it's not running, you aren't going to be able to make any windows.
I think we would do better to stop using the term OS when dealing with modern computers. The term used to have meaning, but it clearly doesn't any more. What we are dealing with now is the hardware interface (the kernel), the device interface(s), the network interface, and the user interface. Using only the user interface, we have only things that create or modify data of some kind within themselves. But if you're serving or retrieving data across the network, you're using a network interface. if you're printing or playing a 3D game, you're using a device or the hardware interface.
Modern computers are much more complicated than they used to be!
Daniel
sorry, that would make it "MacOS 11"
:)
if the I came before the X, it would be 9, but it comes after so it's 11.
Daniel