The ironic thing is that the CPL is almost identical to the GPL in its features (the CPL has some patent clauses which the FSF are thinking of incorporating into the next version of the GPL), including copyleft which Microsoft has been so vocal in opposing in the past.
Frankly thats quite horrible. It isnt obvious to me what half of the options in that dialog do. It strikes me as confusing and unclear. I think the lack of any kind of text labels makes it the worst part.
Buffer overflows arent really an issue here. When doing things like network communication, or if the kernel was checking something that could be done by an ordinary user then sure, it might be an issue. But kernel modules can only be loaded if you're root anyway.
As an additional point, its worth noting that writing GNOME apps isnt just a matter of writing standard C. GNOME is based on the GLib library which provides some of the OOP features of higher level languages. There are probably more developers who can write code for Python, Java or C# than there are who can develop for C+GLib. So using a higher level language makes GNOME programming possible for a large base of existing developers while at the same time providing a more pleasant platform for developers to work under.
I dont see how you can call Python, Java or even C# 'niche' languages. Python has developed a large user base over the last few years, and there are thousands of CS graduates out there who have been taught to program in Java (and moving from Java to C# isnt much of a conceptual leap).
Because while C is used for GNOME currently, its generally accepted that it isnt an appropriate language for writing GUI applications. While the GNOME libraries are fairly nice to use, I've found that developing for them is still unpleasant because I was using C. While C is probably slightly faster than higher level languages like C#, when writing a GUI program this isnt really an important issue. Developer speed is and should be more important than execution speed. Writing applications in C wastes my time, time I could spend doing more important things.
How about we dont? Seriously, does anyone really think that standardising the core of the desktop on a niche language that few people know is going to attract developers? The author seems to have missed a crucial factor in reasons for choosing languages: developer base. Python, C# and Java both already have large developer bases. This is one of the main reasons why they are interesting as languages for GNOME.
I dont have anything against Eiffel (infact I've heard it has some interesting features), but this is folly. Come back when you've convinced enough people to use Eiffel that there are some, indeed any large GNOME projects written in it.
I am waiting for sfraggle's next comment when he tries to persuade us that we should all be using goto.
Actually Edsger Dijkstra is one of my heroes:)
Type checking is about more accurately specifying what a function or class does, and affording compile-time guarantees as to what that class will or will-not do.
It seems to me that this creates the kind of "if it compiles, ship it" attitude that leads to so much bad software. A compiler cannot guarantee what your class will or will not do - only proper testing can.
If you're writing code professionally, you should be writing tests, and they make type checks pretty much redundant anyway - so what is the point in type checking?
As for specifying what a function or class does, isnt that the point of documentation? Good documentation will give a much more accurate specification of what something does than "the arguments should be of these types", which is essentially all that type checking gives you.
Static type checking can help fix a few bugs, but as a coder, to be honest getting types confused isnt a mistake I feel I make very often. If you want solid code, the only real way to go about it is through testing, and unit tests work quite well. Unlike static checking they test all parts of the behaviour of the program. I've come to feel that the benefits of static typing arent worth it for the hassle it gives you. If you write good unit tests then type checking should be redundant anyway.
If you watch The Two Towers Extended Edition commentary, you'll find that one of the crew was chased through the streets of London in the early hours of the morning one day by people who wanted to rob him. Fortunately he managed to get away and the iPod in his pocket with the entire film on didnt get leaked:)
I've used glib and it has made my life much better when writing C code. Not only the data structures which another poster mentioned, but I also find very useful that there are utility functions provided for things you tend to do all of the time - g_strdup_printf springs to mind.
The portability stuff is also really useful - I spent ages trying to get code working on windows which used gettimeofday before I realised that glib just had standardised time functions.
It's dthing you get on to go to work in when you don't want to get dcar out of dgarage
I'm guessing the KDE and GNOME developers have run out of names that begin with 'g' and 'k' and have now settled on the new cross-desktop freedesktop.org standard of 'd':-)
I've tried to read the Arch manual three times now and given up every time. Maybe its better for large projects, I dont know. The website and everything about just gave me this unprofessional, unfinished feel to it.
Subversion looks a lot nicer than Arch. svn just tries to be a "better cvs" and fixes a load of the nasty things about CVS. Its a lot faster too, and theres a plugin which lets you use it in Eclipse. Plus it has some pretty cool features like the apache plugin which lets you check out over http.
Give Freedoom a go - the PrBoom port runs on Linux and supports multiplayer. Not all the freedoom levels support deathmatch yet but theres a huge archive of deathmatch wads you can play under it instead.
Bluetooth spamming seems only of limited use; you have to get close enough to be able to send the message. Maybe from a car driving around a busy city or in a nightclub or crowded bar it might work.
What might be more interesting is bluetooth viruses. We're probably fairly safe since we dont have a monoculture in mobile phones like that which exists on the desktop, but you can just imagine bluetooth viruses hopping from phone to phone as their owner travels around:-). Plus the fact that its very difficult to update phones to fix holes could make this a pretty big problem if such security holes were found.
girl is naked, take a movie girl is looking, picture cutie you buy thing from pop up banner you get wallet, purchase camera
we must destroy x10, we must destroy all internet ads we must destroy x10, we must destroy all internet ads
window pop up on the screen taking control of my machine making all internet user insane x10 profit goes down the drain
girl is naked, take a movie girl is looking, picture cutie you buy thing from pop up banner you get wallet, purchase camera
we must destroy x10, we must destroy all internet ads we must destroy x10, we must destroy all internet ads
the economy failing is x10 fault popping up window is computer assault window popup again and again only solution is crush x10
we must destroy x10, we must destroy all internet ads we must destroy x10, we must destroy all internet ads we must destroy x10, we must destroy all internet ads we must destroy x10, we must destroy all internet ads
Personally, If I dont want my box to crawl I just buy more RAM.
Re:Another way to speed up booting Linux
on
Booting Linux Faster
·
· Score: 2, Informative
This is a blatant troll. The current init.d scripts system IS a way to start and stop daemons with a set of standard command line options. Realistically, there isnt any noticable performance hit from using bash scripts, especially considering the scripts used to start system services are usually incredibly simple.
The ironic thing is that the CPL is almost identical to the GPL in its features (the CPL has some patent clauses which the FSF are thinking of incorporating into the next version of the GPL), including copyleft which Microsoft has been so vocal in opposing in the past.
Frankly thats quite horrible. It isnt obvious to me what half of the options in that dialog do. It strikes me as confusing and unclear. I think the lack of any kind of text labels makes it the worst part.
Sounds like a pretty stupid idea to me. Lego is expensive stuff.
Most modern systems now have a hotplug system that automatically loads drivers, but again this only loads modules which have been installed by root.
Buffer overflows arent really an issue here. When doing things like network communication, or if the kernel was checking something that could be done by an ordinary user then sure, it might be an issue. But kernel modules can only be loaded if you're root anyway.
I dont see how you can call Python, Java or even C# 'niche' languages. Python has developed a large user base over the last few years, and there are thousands of CS graduates out there who have been taught to program in Java (and moving from Java to C# isnt much of a conceptual leap).
The GNUstep project already made that mistake. Nobody knows Objective C.
Because while C is used for GNOME currently, its generally accepted that it isnt an appropriate language for writing GUI applications. While the GNOME libraries are fairly nice to use, I've found that developing for them is still unpleasant because I was using C. While C is probably slightly faster than higher level languages like C#, when writing a GUI program this isnt really an important issue. Developer speed is and should be more important than execution speed. Writing applications in C wastes my time, time I could spend doing more important things.
I dont have anything against Eiffel (infact I've heard it has some interesting features), but this is folly. Come back when you've convinced enough people to use Eiffel that there are some, indeed any large GNOME projects written in it.
</shameless plug>
There are some photos of Microsoft's new offering here :)
Actually Edsger Dijkstra is one of my heroes :)
It seems to me that this creates the kind of "if it compiles, ship it" attitude that leads to so much bad software. A compiler cannot guarantee what your class will or will not do - only proper testing can.
If you're writing code professionally, you should be writing tests, and they make type checks pretty much redundant anyway - so what is the point in type checking?
As for specifying what a function or class does, isnt that the point of documentation? Good documentation will give a much more accurate specification of what something does than "the arguments should be of these types", which is essentially all that type checking gives you.
Read about Duck Typing on e2.
If you watch The Two Towers Extended Edition commentary, you'll find that one of the crew was chased through the streets of London in the early hours of the morning one day by people who wanted to rob him. Fortunately he managed to get away and the iPod in his pocket with the entire film on didnt get leaked :)
The portability stuff is also really useful - I spent ages trying to get code working on windows which used gettimeofday before I realised that glib just had standardised time functions.
fraggle@yaffle:~$ ldd
libX11.so.6 =>
fraggle@yaffle:~$ ldd
libX11.so.6 =>
I hear Prescott packs quite a punch.
Subversion looks a lot nicer than Arch. svn just tries to be a "better cvs" and fixes a load of the nasty things about CVS. Its a lot faster too, and theres a plugin which lets you use it in Eclipse. Plus it has some pretty cool features like the apache plugin which lets you check out over http.
Give Freedoom a go - the PrBoom port runs on Linux and supports multiplayer. Not all the freedoom levels support deathmatch yet but theres a huge archive of deathmatch wads you can play under it instead.
What might be more interesting is bluetooth viruses. We're probably fairly safe since we dont have a monoculture in mobile phones like that which exists on the desktop, but you can just imagine bluetooth viruses hopping from phone to phone as their owner travels around :-). Plus the fact that its very difficult to update phones to fix holes could make this a pretty big problem if such security holes were found.
girl is naked, take a movie
girl is looking, picture cutie
you buy thing from pop up banner
you get wallet, purchase camera
we must destroy x10, we must destroy all internet ads
we must destroy x10, we must destroy all internet ads
window pop up on the screen
taking control of my machine
making all internet user insane
x10 profit goes down the drain
girl is naked, take a movie
girl is looking, picture cutie
you buy thing from pop up banner
you get wallet, purchase camera
we must destroy x10, we must destroy all internet ads
we must destroy x10, we must destroy all internet ads
the economy failing is x10 fault
popping up window is computer assault
window popup again and again
only solution is crush x10
we must destroy x10, we must destroy all internet ads
we must destroy x10, we must destroy all internet ads
we must destroy x10, we must destroy all internet ads
we must destroy x10, we must destroy all internet ads
- Kompressor
Personally, If I dont want my box to crawl I just buy more RAM.
This is a blatant troll. The current init.d scripts system IS a way to start and stop daemons with a set of standard command line options. Realistically, there isnt any noticable performance hit from using bash scripts, especially considering the scripts used to start system services are usually incredibly simple.