Domain: att.com
Stories and comments across the archive that link to att.com.
Comments · 1,491
-
"Nullable types" disappointingI got excited for a second when I saw the "nullable types". I was hoping for a second this was a more radical feature that I saw somewhere (in Cyclone, maybe):
You can say if a reference is "nullable" or not. Nullable references can always be assigned any value; non-nullable references can always be assigned from non-nullable references. When you try to assign a non-nullable reference from a nullable one, there's a runtime check inserted.
In other words, it'd be a safety feature. In a lot of cases, it doesn't make sense to pass null to a method. With this feature, it'd be possible to see from the method signature if that's true. It'd save writing a bunch of assertions for those of us who already are picky about this stuff, and be a hint to others that they should be, too. And those assertions are quite useful - they make the program fail sooner, closer to the code that caused the error.
Instead, this is a feature that just lets you assign null to primitive types. By a completely different mechanism than you use for classes. Boring to me - I like languages where there are no special primitive types. Enhancements to them - especially additional differences to remember - won't get me excited.
-
zergReading the article, I don't think anyone would ever actually see the XML unless they edited the file w/ their own text editor. I think the point is that the editor adds and parses the XML for its own benefit. See, our text files were written in ASCII, now Unicode. Therefore, the evolution to a higher representation is (supposedly) logical. The best way to reason about it is a
/. post I saw many moons ago, something like: "You wouldn't put ASCII on your résumé, would you? So why would you put XML?"
If I'm wrong, then this might be slightly more interesting in the long run than, say, Cyclone, where you have to learn a tiny amount more of additional syntax to mark that "this pointer was meant to point to data, not code", "this pointer should not write beyond this boundary", "this function has no business mucking up its stack", etc.
Alternatively, look at Visual Studio.NET.
vs. /**
* @author Lord Omlette
* zOMG WTF
*/
The latter is a bit more readable but more annoying to write. Better we have tools to generate this stuff for us. /// <comment>
/// <author>Lord Omlette</author>
/// zOMG WTF
/// </comment>
And then someone will come out of the woodworks to say "Knuth had Literate Programming back in the 80s, why the fuck aren't we using that?" but that's another rant altogether. -
Re:It's a nice piece...
You sure it's not a Korn field? (ok, lame Unix humor, I know)
(sorry, I'm not talking about the band - although the Korn dev did get a Kornshell book signed by the band) -
Doxygen for C++ / C etc
-
AT&T Crowds
If it's not encrypting and just passing packets around then it sounds like the AT&T research Crowds proxy they were distributing a while ago. (it used to live at this page but I see it's gone now.)
-
Re:The question is...
No prob, no offence intended.
But if indeed their "monopoly can be broken", then this is an excellent first step - well, at least one in the correct direction. It should have been done years ago in the US v. Microsoft case, and unfortunately if the government had respected and followed the will of the courts, it would have made a serious impact on the Microsoft we know of today.
There are many things that could be done (splitting them into business units like "Operating Systems" and "Office/Applications" - and before you say that's outrageous - look at what was done to AT&T in the 80's) and it produced a greater good for all.
Unfortunately, Microsoft has gone on for too long in this marketplace, bundling applicaiton after applicaiton, which really have nothing to do with the core OS itself, while at the same time disalowing competitors onto their prized "desktop". We have seen Microsoft exploit this in the "Great Browser Wars" only to succumb to it's own security flaws due to it's tieing, and it allowed IE to stagnate and only now after faced with real - new competition (Firefox) - is it trying to update it's browser and start spreading the "grassroots" and corporate FUD (security problems, etc).
It's always been about copying the "look and feel" of other systems, absorbing some technology then integrating it into the OS (NCSA Mosaic), then modifying it to keep up with the Jones' until the main competitiors died off (Netscape, et al) then letting it stagnate into the security/bloat/featureless mess we have today - which coincidently they will not update to add new features unless you buy the latest operating system. It will not change if they allow this to happen with the Media Player. We will come full circle once again.
That is what makes Microsoft so scary, they are so good at playing the system - and more power to them for it, but it is also good to see them being put into check by the appropriate forces. -
My experience with Naturally Speaking
Once I tied the Naturally Speaking software together with AT&T's Natural Voices and A.L.I.C.E. bot with some interesting results. Basically, I could just speak to my machine and have it answer me in a real voice. In conversation, I found myself being more forgiving of the shortcomings of the A.I. just because it was speaking to me. When it erred, it was easier to believe that the "person" I was speaking to had just misunderstood me, or I had just misunderstood what was said.
Actually, does anyone know of any research in this area? If adding speech recognition and synthesis to a computer makes the machine seem "smarter"? -
LD providers run IP, too
Most of the big long distance companies have their own fiber and use it to carry Internet traffic. Probably most of the bits in this post travelled over those very lines. Let's see:
$ tracert.exe slashdot.org
AT&T. Savvis doesn't appear to be in the long distance business.
Tracing route to slashdot.org [66.35.250.150]
over a maximum of 30 hops:
1 <10 ms <10 ms <10 ms 10.1.2.1
2 10 ms 10 ms 10 ms 10.20.65.1
3 270 ms 221 ms 290 ms [redacted]
4 160 ms 291 ms 260 ms [redacted]
5 191 ms 230 ms 270 ms tbr1-p012301.cgcil.ip.att.net [12.123.6.9]
6 120 ms 290 ms 200 ms ggr2-p310.cgcil.ip.att.net [12.123.6.65]
7 170 ms 501 ms 200 ms dcr1-so-3-3-0.Chicago.savvis.net [208.175.10.93]
8 271 ms 250 ms 271 ms dcr2-loopback.SanFranciscosfo.savvis.net [206.24.210.100]
9 150 ms 270 ms 281 ms bhr1-pos-0-0.SantaClarasc8.savvis.net [208.172.156.198]
10 200 ms 270 ms 231 ms csr1-ve243.SantaClarasc8.savvis.net [66.35.194.50]
11 110 ms 291 ms 280 ms 66.35.212.174
12 slashdot.org [66.35.250.150] reports: Destination host unreachable.
Trace complete.Some smaller outfits just lease capacity or resell it, but they're agile enough to figure out what to do.
-
Re:Yay!
Actually it might be a bit more than a function call...
If operator == is defined outside a class defintion either the right or the left hand side of == could have an implicit conversion performed if there is a single argument, non-explicit-labelled, constructor to go from the type on the left to the type on the right or the right to the left.
Truth is by looking at a line of code you have to know a lot more about the types involved, how they are defined, and other stuff to know what's going on.
No good C++ programmer will tell you that it's easier to account for the impact of a line of C++ vs a line of C.
Don't get me wrong either. C++ kernels can exist and can be VERY fast. Check out L4 Pistachio if you don't believe me. It's also highly cross platform compatible [works on many systems].
They have wisely restricted themselves to a subset of features of the C++ language but have done a great job using the language without going nuts on features. I think it all comes down to discipline.
If I had it my way you wouldn't write kernels in any C-like language at all. I think C is the root of buffer overruns and other security problems. More rigorously type checked languages like Ada95 or even some functional langs like Haskell would make ideal languages for a kernel if they generate good enough code :). I think Pre-Scheme developers would agree with me.
In the meantime people can look at safe C dialects like Cyclone and get similar benefits.
Linus Torvalds has said he's been working on a type checking lint tool for his kernel. Good on him, I say :). That's exactly the right direction for the system to go. I don't think he'd be against a language with stronger typing either if he could get similar guarantees for code generation as C. It almost always comes down to implementation details [of the language]. -
Watch your assumptionsWho says he was just counting? Maybe he was listing, say, numerators of continued fraction convergents to sqrt(8).
And he did it in Spanish just to show off.
-
Re:RealVNC
RealVNC took over AT&T Laboratories' (Cambridge, UK) VNC. The last AT&T versions (up to 3.3.7) were released under the GNU GPL. RealVNC is run by former AT&T Labs employees. This is the original VNC. They are currently developing (and starting to release) commercial VNC servers for Windows and UNIX platforms. The free version is still released with source and docs. They ask for your info when you download, but you are not required to provide any.
I use RealVNC (and occasionally AT&T's VNC on non-updated systems) for all of my remote-access-ing. -
Re:tightvnc vs. real vnc
The RFB protocol (which VNC uses) has specified ServerCutText and ClientCutText messages since protocol version 3.3:
The RFB Protocol, v3.3
You just need to find server and client implementations that actually support it. :) -
Re:You forget...
You might then be amused by this:
http://www.research.att.com/projects/ShortTalk/ -
Re:Forgot one......I honestly don't see the point of jumping on the Java-.Net-Mono bandwagon when I'd have to relearn everything to gain practically nothing.
Reminds me of what I had read once on the creator of C++'s homepage: "Java isn't platform independent; it is a platform.". It certainly is from a developer's point of view. I'll probably get serious about Java some day, but that's exactly what's been stopping me -- I'm already extremely knowledgable and proficient on one platform, so switching is just taking a step backwards as far as productivity. My boss (a non-techy) envisions Java projects likely coming our way in the future, and I've told him I'll become proficient in it like I am in C++, but point out that it won't buy us anything, such as additional capabilities. I'll just be learning how to do all that I can already do right now, just in a slightly different language with a completely different set of libraries. Same goes for
.Net. -
Re:But what about text to speech?
By we I assume you mean "the open source community" and the answer is "when you get off your ass and code it". If by "we" you mean the world at large then go and look at AT&T's Natural Voices project.
-
Re:Some comments
Can you please point me to a good C+ compiler... gcc keeps complaining about my
.cp files.
"The slightly shorter name "C+" is a syntax error; it has also been used as the name of an unrelated language." -
Re:Yeah, Right
"The nice thing about standards is that there are so many from which to choose."
The "proprietary specifications", in this case, define a set of choices amongs the bazillions of possible combinations of competing VoIP protocols that AT&T wants to use in their network. H.323? H.248? RFC 3261? MGCP? SGCP? SCCP? SIP? OSP? SAP? RVP? G.723? G.729? G.729A? All of these are open standards, and AT&T's standards are perfectly "open" in that they're giving them away to companies so that those companies know what features AT&T will want. There's not just one way to build a VoIP network, and if you're going to have a coherent one that works, you're going to need to specify which standards you're using.
They've also got a spec for special services that aren't currently well standardized.
Here's the original press release from which DeviceForge was cribbing. You can find lots more details on the AT&T site from there.
-
Re:Yeah, Right
"The nice thing about standards is that there are so many from which to choose."
The "proprietary specifications", in this case, define a set of choices amongs the bazillions of possible combinations of competing VoIP protocols that AT&T wants to use in their network. H.323? H.248? RFC 3261? MGCP? SGCP? SCCP? SIP? OSP? SAP? RVP? G.723? G.729? G.729A? All of these are open standards, and AT&T's standards are perfectly "open" in that they're giving them away to companies so that those companies know what features AT&T will want. There's not just one way to build a VoIP network, and if you're going to have a coherent one that works, you're going to need to specify which standards you're using.
They've also got a spec for special services that aren't currently well standardized.
Here's the original press release from which DeviceForge was cribbing. You can find lots more details on the AT&T site from there.
-
Re:911 was designed for landlines
AT&T CallVantage big enough for you?
Personally I use Vonage and haven't had any problems with it.
-
Re:GLAT - sample questions (spoiler)
It's actually the greatest number with the
specified number of letters...
This sequence is indexed by God as:
http://www.research.att.com/cgi-bin/access.cgi/as/ njas/sequences/eisA.cgi?Anum=A052196
(YES I googled it!)
So, the answer is 96 or a Google depending on
whether you want to count a Google as a
bona-fide number.
I tend to suspect the GoogleLabs would.. -
Re:Wait...
Remeber SCO owns c++ too!
"And C++ programming languages, we own those" -Darl McBride
And nobody was more surprised to hear it than Bjarne Stroustrup himself! -
Re:Frustrating
Heh. Kudos for working it out. I just went to the online encyclopedia of integer sequences. My doh was probably just as loud though.
-
Another way to search for the answer to part 2
-
Re:aaahActually, you can't solve this problem with polynomial interpolation because it's not a polynomial interpolation problem. This is not a classical polynomial function. As I said, the answer is much simpler. The position of the next term in the list CANNOT be derived from the previous terms.
The point of the "idiotic" question is that people can spend a lot of time (in my case two hours) working on completely the wrong solution (which may seem obvious) when the TRUE solution is much simpler. This is a classic "think outside the box" problem.
That being said, I did find this really cool page while trying to figure out the next number in the series.. The On-Line Encyclopedia of Integer Sequences. You give it a piece of a sequence and it finds integer sequences that match the pattern. Very cool.
P.S.- if you want to know, here's a hint, rot13'd:fhz gur qvtvgf bs rnpu ahzore gbtrgure
-
Re:About inheritance and the API
The average programmer doesn't care the the hierarchy is 10 or 11 levels deep (well at least until the next avalon release comes out). But Microsoft should care, and Ximian also cares. Very deep inheritance hierarchies are tough to maintain. Inheritance is a pretty intimate binding of two classes and changes higher up in the hierarchy sometimes have disasterous changes down the line. From a talk that I heard Stroustrup give, he doesn't care for them much either. (I didn't attend this one, but I imagine it is the same based on the slides.)
In this day and age, the commonly accepted wisdom is that you break functionality into interfaces and you write shallow helper classes to degalate to for common implementations of those interfaces. (C# is quite possibly the best language there is for supporting this architecture.) This way you don't force the user to use implementations they don't want when they want to program to a particular interface in your system.
If you look at the code for eclipse, you'll see a good example of this design in action.
-
I'll stick with troff, thanks.
I mostly write technical documents. troff takes less effort to write, I'll continue using that instead of AbiWord/OpenOffice/MS Word. WYSIWYG is generally not that useful if you do mainly structured documents or if you need fine control of typesetting. Typesetting languages with the right scripts are generally the easiest. If you need purely structured documents then DocBook-SGML is not a bad route to go. (SGML is fancier and more human-friendly than XML, which is what you really want if you are manually editing tags)
Also when doing resumes you really have to make sure that the resume looks correct in Wordpad, Word97 and Office2k/XP. Seems that these are what recruiters use (wordpad appearing to be the most common). Hint: save as word97 RTF and rename .rtf to .doc. This will make it load correctly in wordpad, without getting too fancy/bizarre on the formatting that Office2K likes to put in.
Recruiters seem to hate PDFs (I guess they prefer file formats with macro viruses). Although I've had a great deal of luck with HTML. Mostly I just do my resume in troff and provide it as PDF to the manager/engineers and HTML to the recruiters and everyone is happy.
Guide to doing your resume in troff (and taking advantage of macros to painlessly customize your resume).
Your Resume: Part 1 Your Resume: Part 2
If you do a lot of technical documents these tools work well with troff (or LaTeX):
Graphviz for doing automated diagrams
Gnuplot for doing scientific graphing (it can output postscript and ascii)
TGIF a 2-d drawing tool with a light-weigh intuitive UI.
gEDA for schematics and pcb layout
xcircuit extremely powerful 2-d drawing tool. originally designed for schematics, but is useful for any sort of diagram.
Also if you were wondering: Résumé == Curriculum vitae (CV) -
Re:TerrifyingHere's an idea:
Notify them via a phone call, using the Relay phone system for the deaf.
Not exactly a good use of the service that we all pay for, but it's fairly anonymous, and you can be non-threatening.
-
Re:What if I program in C++ ?
I did XP in extreme C++ for about a year (by extreme C++, I mean boostified, Alexandrescu'd C++). We used CppUnit for our test framework.
I'm not especially satisfied with the currently available C++ unit testing frameworks. CppUnit and Boost's both have trade-offs. I suspect they'll both get better, though.
The Ant-Contrib project's cc task works pretty well, in my limited experience. I was playing around with it just this weekend. I've yet to set up a tinderbox build process, but I don't see why this wouldn't be easy with either Cruise Control or good ol' cron.
In my mind, the two biggest hurdles with doing XP in C++ are build speed and developer prejudice. You can tackle build speed with a combination of ccache, distcc, good programming principles, and cash. Tackling developer prejudice is harder. A lot of C++ programmers like to write low-level, unsafe, old school C++ code. Modern C++ mostly lets you discard unsafe coding practices without sacrificing efficiency. Whether you can convince an old C++ programmer of this is another matter; it depends on the person. I've had decent success taking Java programmers and teaching them modern C++ via pair programming.
Using Boost helps, indirectly. You write safer code, which gives you a faster development cycle. All in all, I think the basic tools are there. It might be a little harder to get fancy lava lamp integration going with C++, but there's no reason why you can't have a good build process. It's just that a lot of C++ projects haven't evolved (I think this is due, in part, to the fact that the C++ community is late to the internet; a lot of C++ programmers just don't know what's, out there.
cheers,
Jon -
Unix for Windows from ATT
If cygwin is not upto production standard, then maybe you can evaluate Unix for Windows - it was originally an ATT labs product - but now seems to have been sold. You can download a non-commercial version for free (as in beer). Check it out at http://www.research.att.com/sw/tools/uwin .
-
OMG...you gotta try this...
1. Go to the URL in the article for the text to speech (http://www.research.att.com/projects/tts/demo.ht
m l)
2. Type "Those who are tardy do not get fruit cup"
3. Select "Klara....German" for the voice.
4. Click "Speak"
5. Dribble milk out of your nose -
Re:2d treadmills, motion sickness and Redirection
I was thinking something more like this, allowing gross positioning of many objects (about 75 objects per second to 3cm). An on-player computer system would use an accelerometer system for head positioning and tracking between updates from the gross positioning system.
The article describes a 3 floor, 10,000 square foot office building that required about 750 sensors to cover. While that is probably expensive, its also a very large area. A mostly empty warehouse enviroment could probably be covered effectively (perhaps with lower resolution) for much less. For that matter, it might make more sense to put ultrasonic receivers on the few people and use a few transmitters located around the area to chirp signals that the computer system could use to triangulate its location.
I like the idea of VR gaming in an arena because it largely removes the problems of motion feedback (realistic acceleration, ground textures, etc), but still allows you to use the space to simulate a larger enviroment. I think the technology has progressed to a point where someone could set up a successful commercial arena VR game.
Thanks for the links. -
Graphviz
You might want to look at graphviz:
http://www.research.att.com/sw/tools/graphviz
I've used the mac os x port and found it will create graphs from possibly script-generated input files in a simple syntax. -
Re:Really? Does that now mean that....
Oh hm, you must have forgotten about Cygwin
... or about U/WIN (created by David "ksh" Korn) ... or NT's own POSIX subsystem (as pathetic as it is)... Cygwin and U/WIN are both so complete you can run X Window on them, need I say more? Of course you can run *x apps on Windows, and it's been possible for some time now.
Moll. -
Text To Speach
Part of the balance could be redressed in many interesting ways through computers reading to humans.
What is the state of that art?
Some groups have spent millions to advance text-to-speach technology.
Others have made a free open source text-to-speach engine.
synthesizer.allocate();
synthesizer.resume();
synthesizer.speakPlainText("Hello, world!", null);
synthesizer.waitEngineState(Synthesizer.QUEUE_EMPT Y);
synthesizer.deallocate();
-
Re:So what...Well, this is exactly why AT&T made VNC in the first place. They have some sort of RFID-like technology (using ultrasound) in your employee badge. When you sit at any computer on their site, it automatically gives you your own VNC desktop exactly as you left it. They used the same scheme to route incomming calls to the nearest phone to you, with a unique personal ring.
This was many years ago. You can read about it here and here
-
Re:So what...Well, this is exactly why AT&T made VNC in the first place. They have some sort of RFID-like technology (using ultrasound) in your employee badge. When you sit at any computer on their site, it automatically gives you your own VNC desktop exactly as you left it. They used the same scheme to route incomming calls to the nearest phone to you, with a unique personal ring.
This was many years ago. You can read about it here and here
-
Re:deeper problemActually, C++ has been standardized, but it took such a long time that there are many incompatible versions of C++ out there.
-
COW, COLT, Ha!
AT&T has been doing this for years, even back the MA Bell days, except not with cell phones, but with central offices. AT&T has an entire Network Disaster Recovery team sitting around just waiting for a disaster to strike. For September 11th, they replaced an entire central office (the one that they lost in the basement of the one tower) Pics and story here providing local phone service to authorities and civilians over satellite. They usually provide free phone service via satellite or microwave after any disaster to the general public free of charge. As far as other providers, I don't think there are any that have such a comprehensive backup strategy or fleet of vehicles.
-
COW, COLT, Ha!
AT&T has been doing this for years, even back the MA Bell days, except not with cell phones, but with central offices. AT&T has an entire Network Disaster Recovery team sitting around just waiting for a disaster to strike. For September 11th, they replaced an entire central office (the one that they lost in the basement of the one tower) Pics and story here providing local phone service to authorities and civilians over satellite. They usually provide free phone service via satellite or microwave after any disaster to the general public free of charge. As far as other providers, I don't think there are any that have such a comprehensive backup strategy or fleet of vehicles.
-
Re:Network Forensics
There are actually a lot of good starts on that. tcpdump and tcpreplay, combined with etherape, are a good start to the old SilentRunner Collector. The Analyzer could be replicated with something based on graphviz. Some work has been done in this area. Granted, more is left (SilentRunner had an infrastructure to move packet data around from collectors to analyzers and such), and n-gram analysis would be useful (I just found a project, Text::Ngrams, that does it in Perl), but we're not actually that far away. SilentRunner might have been uber-cool before, but now it's actually well within the reach of the free software community. I've been thinking about this a lot for almost a year; if anyone's interested in working on this, let me know (my email address is on my website), this would be a great project (so would several of these listed, actually).
-
A correction to the article ... use "Cyclone"
On the topic where memory management related security issue is blamed on reluctance to switch away from C...
Of course, most of our programming is still being done in C/C++--languages that force programmers to manually mate up a free() with each malloc(). I'm amazed that someone hasn't come up with the idea yet of making malloc() and free() stub-calls into a generic garbage-collected memory allocator and doing away with C memory management altogether.
This is not true. Cyclone does exactly that, and more. Cyclone is a dialect of C. In fact, a lot of C code can be ported to Cyclone with little to no modification. It has garbage collection for stub malloc/free code, and optionally region memory management where you can dictate when some collection of objects are deallocated all at once.
-
Sniffer ProSniffer Pro has features which neither "ntop" nor "ethereal" come anywhere near, both in the realtime monitoring of traffic and also in some of the "expert" functionality.
I've yet to find an open source tool that can show a "matrix" graph of source and destination talkers by MAC/IP/IPX name in realtime as found in Sniffer. Other tools show some of this information, but do not render the same graphical display (chords of a circle) as Sniffer.
With ethereal there's to do this with snapshots using graphviz, but not realtime...
-
Re:Nice.
Could you not find any links to articles which said things like "Africa ONE has completed..."? Because all of your "More info" links say things like "The Africa ONE project will create...". I could find no proof that it actually was ever completed, or even started, so the fiber is possibly very dark indeed.
I was able to find links about this from 1995 1998 1999. So it's not like this was necessarily imminent just because Wired was writing about it.
www.africaone.com says "No web site is configured at this address." which isn't particularily promising.
The CIA World Factbook says that Namibia has an Africa ONE connection. But only Namibia, which isn't encouraging.
Of course, it's possible/likely that this project is now on someone else's books, and is called something else. I've already spent my 15 minutes poking the web ... -
I did that.
I've been doing exactly this same thing for a while. I found that it got extrememly obnoxious, so I dumbed mine down to just play a wave file whenever I get pinged by someone pinging me from a command line ping. I don't know why the length is different than the crap pings that come in every 8 or 9 seconds, but with this swatch definition below, it seems to trigger only when I am pinged by hand.
So, put this in your swatch file that watches your firewall log:
watchfor /firewall-ping.*LEN=84/
exec "/usr/local/site/bin/ping-wave.sh ping.wav"
That script just locks the darned thing so it doesnt pop and crack if i get pinged twice:
ping-wave.sh:
if `grep OPEN /etc/pingwatch.lock 1>/dev/null`
then (echo -n > /etc/pingwatch.lock) && (/usr/bin/play /usr/local/site/etc/soun
ds/$1) && (echo OPEN > /etc/pingwatch.lock)
fi
And here's a link to my ping wave for you to use:
ping .wav
I also used the naturalvoices website to make a nerdy computer lady announcing new entries in my arp table. You can grab wave file too if you want. Here's the script I have for that:
put this in your /etc/crontab or whatever:
0-59 * * * * root /usr/local/site/bin/arp-watch
and then make the above command contain this:
#!/bin/bash
for each in `arp -n |grep -v "Address"|grep -v "eth0"|awk '{print $3}'`
do
if grep $each /etc/arptable 1>/dev/null
then :
else /usr/bin/play /usr/local/site/etc/sounds/new.arp.entry.wav && echo $each >> /etc/arptable
fi
done
if anyone can improve upon my bash, please, i have no ego. :D -
Re:every year this happens...And how's that different from C++? Unless you believe the first C++ compiler was written in C++...
Ehm. The first C++-compiler _was_ written in C++!
http://www.research.att.com/~bs/bs_faq.html#bootst rapping -
Bad Study.
This study akin to saying that we should not have the police because crime still exists or that we should not have fire departments because they don't prevent fires.
People who report security holes are not the same people who code the program. They are like the firemen while the coders are like the home owners. It's up to the coders to make their house fire resistent.
Having said that I am glad people are finally moving away from C, C++ and other unmanaged code. That alone should cut down the secutiry holes by 70%.
I hope the linux programmers take the same kind of Initiative that MS has with .NET and C#. Sticking with C or C++ just does not make any sense when there are viable alternatives on the market. If performance is important then at least use alternatives like cyclone. -
Re:been there, done that
No, trust me, they are definitely four consecutive digits of pi even so. Somewhere in the first 99849 digits, in fact.
Maths is so cool.
-
mmmm
i'd like a freely available phoneme pack (or whatever i should call it properly) that sounds as good as AT&T's natural voices. last time i used festival, i was just so put off by the available voice packs that i gave up on the project i was working on. That was a few years ago, but I bet it hasn't changed much. (i use a program called swatch that watches my log files and then plays computer voices just telling me what the hell is going on. sitting on the couch watching family guy and hearing that someone just arped on my lan is more intuitive than me getting an email about it. and it has its own channel on the mixer so when i have my harem over to please me on thursday nights, i just put the slider all the way down.) yeah.
-
Re:Totally wrong.
Not only that, but this was the moral equivalent of a military coup against the elected government. The PALs were there to prevent the military from launching without authorization from the National Command Authority (i.e. the President or his successor).
This is not correct. PAL codes weren't held by the civilian leadership until the 1990's, until then, they were held by the operating forces. The reason PALs were created wasn't to provide an additional layer of control, but to prevent weapons which had fallen into the wrong hands from being used. See this page for the general history of PALs. -
Re:Security against whom?
The PAL code was supposed to be owned by the civilian leadership as a way to keep control over missiles in the hands of the military. Instead of being another layer of security, it was an orthogonal measure to all the others.
That's where the article is seriously wrong. PAL codes weren't held by the civilian leadership until the 1990's. Until then, they were held by the operating forces. The reason PALs were created wasn't to provide an additional layer of control, but to prevent weapons which had fallen into the wrong hands from being used. See this page for the general history of PALs.