Domain: developer.com
Stories and comments across the archive that link to developer.com.
Comments · 65
-
Re:All your dev are belong to us....
But why does that matter?
I really can't see any reason why this is any "worse" than a single entity owning, say, http://developer.com/. Domain names really aren't like real estate -- the namespace is so big that you're always going to be able to find an alternative.
If there's some group organization that feels strongly that there should be a TLD reserved for developers, then they should go ahead and register one.
-
Nice improvements
Going through the article it looks like a nice set of improvements. I expect that subversion users will be pleased with both the current improvements, and what will be built upon them in the future.
Among the useful improvements noted:
One of the area where robustness has been improved is in the storage of metadata. SVN now tracks the moves of working copy items. Stein noted that the harder part is getting the rest of the system to recognize the moves, and that work is ongoing. He explained that from a historical perspective, SVN didn't "move" items per se. Instead, the item was copied to its new location, and deleted from the old.
"This is problematic (for example) because if an edit comes in from the server for that deleted item, then we don't know what to do with it," Stein said. "For a moved item, then we know the edit should probably be applied to wherever the thing was moved."
-
Re:This e-mail was years after Google started Andr
Java ME CLDC is "a horizontal one" - it has a small (and not entirely compatible) subset of core libraries common with SE plus application specific API profiles like MIDP.
Did you miss where I wrote "intended to be"? http://www.developer.com/java/java-8-delayed-until-2013.html
Time will tell how far it goes in practice.Your quip about "[apparently] equivalent" is especially funny, considering that Android isn't and is not meant to be [apparently] equivalent to Java SE
Never said that it was, but I'm glad it amused you. What I'm referring to are inconsistencies between different "regular" JREs. If you believe in "write once run everywhere" I have a bridge you might like to buy.
My point was this: come the day that they all start doing it intentionally, rather than by neglect or accident, do you think that'll be an improvement?
Comprehension fail.
-
Re:Why not openoffice?
It also still doesn't seem to open or save Office files correctly, which is really needed if you want to exchange files with other people.
I have that problem as well but it isn't restricted to OpenOffice. My GF's instructors post all their assignments and lecture notes as MS Word or Powerpoint documents. Between the two versions of MS Office we have (97 and 2007), OpenOffice 3.3 and LibreOffice 3.4, LibreOffice is the one that works the most often.
The GUI also feels kind of sluggish and outdated, but that probably comes from Java.
OpenOffice doesn't use Java for the GUI. It is just used for some database backends and wizards but that is all. Most people can safely disable it and save some memory and start-up time. And LibreOffice is working on removing much of the java code.
Since they updated the icons in later versions, I think it looks fine, but some features are still pretty hard to find.
-
Re:Would really like to see a list of frameworks..
As an iOS developer, I use a lot of open source frameworks. But most of them are BSD licences - I'm really curious what they found that they considered to be GPL or Apache or LGPL, as I'm not aware of any really popular frameworks using those licenses.
I suspect anything that is GPL, LGPL is in violation because of what certain developers have been saying about the compatability of how the application store works.
-
Re:This is just bubble memory again
Personally I'm waiting for "implicit typing" to be in style again.
-
Re:Big Data Need
Assuming the maximum configuration is thousands of cores, how does it compare in other aspects to Facebook's 23,000 cores and 36 petabytes of data, with unlimited scalability to come?
For all intents and purposes, mainframes are still mainframes. They're parallel, and they grow, but they still have those limits that clusters just don't have.
(I consider price to be a limit as well)
-
Sometimes it does not workWhich is the same for
/. Does the idle page still give us a text input box 10% of the page?On every page I have looked at, the reader has worked wonderfully. It may be the feature, along with clicktoflash, that moves me to safari.
Saying this will never work over the long haul is like saying the Camino will never work because it includes a default flash blocker or Firefox will never work because there are too many easily installed plugin to block ads. It is a web feature, apparently an open source web feature, and browsers that want to focus on user experiences will implement it as a default feature, just like pop up blocking. Browsers that do not implement will show themselves as front ends for advertisers, not browsers for users.
There are issues. The readers removes the branding from the site. This could be considered bad. But people will use for the same reason that some choose to use ad blocking. The articles spread out over 10 pages, with long waits for ads to load between pages, and infected ads, will give some cause to bypass the predefined interface. Like other tech, websites will adjust. After all, websites serve the customers, not the other way around.
-
Re:This is why Android could take over the market.
No, I didn't read the article you linked to. I'm already well versed on what the bystander effect is so I don't have a particular need for an about.com re-hash of the wikipedia article on it.
I linked to other articles in my original post, one of which had numbers showing that open source, even core stuff that SOMEONE should have hardened, was just as vulnerable and in some cases more, some cases less) as closed source. You obviously didn't read it, even though you posted a reply to it.
There are other articles to be found, such as this Kaspersky Security Bulletin which had this to say:
As for Linux users, a number of serious vulnerabilities were reported in 2006, most of them related directly to the Linux kernel. Some of these allow DoS attacks against a vulnerable system, while the others allow elevation of privileges.
Obviously the Linux kernel is an open source effort that a LOT of eyeballs stare at and it still has vulnerabilities. I'm not saying that Linux is bad, just that open source is not immune to security problems by the very virtue of being open.
-
Re:This is why Android could take over the market.
It comes down to if you cannot see the source don't trust it.
And when is the last time you looked at every single line of code for a major open-source application and made sure that it was totally and completely safe? Do you just use them, assuming that someone else did it for you?
The fact is that we all trust the developers at some point, it doesn't matter if it is open or closed source. At least with a major author they have a physical presence, buildings, investors, publicly traded, cash in the bank. If they do something underhanded you have stuff you can go after. In open source yeah you have code that people can look at but you also have the possibility of some anonymous person who works a sneaky backdoor into the code. Then when it all goes kablooey there's no one whose feet can be held to the fire.
I'm not saying that either closed or open source is better than the other, just that both have many good and bad points. You can't automatically assume that open source is better. Either way it helps to have safeguards in place, like an app review process and the ability to quickly remove malware from devices.
-
Re:This is why Android could take over the market.
It comes down to if you cannot see the source don't trust it.
And when is the last time you looked at every single line of code for a major open-source application and made sure that it was totally and completely safe? Do you just use them, assuming that someone else did it for you?
The fact is that we all trust the developers at some point, it doesn't matter if it is open or closed source. At least with a major author they have a physical presence, buildings, investors, publicly traded, cash in the bank. If they do something underhanded you have stuff you can go after. In open source yeah you have code that people can look at but you also have the possibility of some anonymous person who works a sneaky backdoor into the code. Then when it all goes kablooey there's no one whose feet can be held to the fire.
I'm not saying that either closed or open source is better than the other, just that both have many good and bad points. You can't automatically assume that open source is better. Either way it helps to have safeguards in place, like an app review process and the ability to quickly remove malware from devices.
-
Re:Good
1) http://www.theserverside.com/news/thread.tss?thread_id=46887
2) http://weblogs.java.net/blog/alexwinston/archive/2005/04/strongly_types_1.html
3) http://www.developer.com/java/other/article.php/3300881 ?
4) http://java.sun.com/j2se/1.5.0/docs/guide/language/generics.html
5) http://java.sun.com/j2se/1.5.0/docs/guide/reflection/proxy.html ?Absent? (Admittedly, I don't code in Java, but I got those links just by googling all your points.)
-
If you actually want to do this...
I'm going to leave aside the wisdom of doing this, and focus on the practical aspects.
Has anyone built anything like this?
An Android phone hooked up to Google Latitude would meet most of your requirements - small, accessible anywhere you've got an internet connection, accessible on mobile phones, phone can be turned off, phone is linux based.
Is there an open source solution?
There's OpenGTS, an Open GPS Tracking System. However, it's not obvious from their website what trackers it works with.
How would I go about building my own?
People have home-made basic versions. GPS modules can be purchased which give a reasonably accurate location once per second, or on demand, over a serial, usb, or bluetooth link; many mobile phones have gps modules already built in. Most tracking systems communicate over the cell phone system, either by SMS or mobile data connections. Of course, many mobile data connections are firewalled/NATed, so the benefit of SMS is you can transmit a query to the tracker. The disadvantage is the per-message cost, especially if you want regular location updates, and that it's easier to program the PC end of a mobile data connection. Cell companies also offer "machine to machine" data plans, but it's unlikely they'll want to deal with you if you're making a one-off homebrew system.
You could get a separate cell phone and GPS and make a homebrew device, like the one linked above, but you're unlikely to get things much more compact than buying a mobile phone with both built in.
If you're a programmer, my suggestion would be a mobile phone running Android, and using the GPS APIs to read the location and send it off to your server.
How does a tinfoil hat wearer engineer such a device to make sure Big-Brother isn't watching too?
Pretty much every mobile tracking system uses the cell phone network for connectivity, because it's more widely available than WiFi, and more affordable than a satellite connection. If you're paranoid about privacy, you should be worried about cell phone triangulation, as that would be the most practical way for "big brother" to track people; so to be paranoid, you can't use a cell phone connection, which will make your design task substantially more difficult. It would be far easier to get a mobile phone, set it up with Google Latitude, turn it off, and tell your daughter to turn it on if she gets lost.
-
Depends on what you're trying to do
On Windows, two prime candidates would be Visual Studio (Express if you want it free), and Qt Creator. Each has its own strengths.
Visual Studio has two things really going for it as far as C++ development is concerned: code completion, and debugging. Let me explain what's so special.
Code completion is a damn tricky beast for C++. I've yet to see an IDE that does it 100% correct (which isn't surprising, since dealing with templates requires a full-features C++ parser and template instantiator just to get completion lists). However, of all C++ IDEs that I know, VS deals with C++ templates best. Some trivial examples to test it:
#include <string>
#include <vector>
int main() {
std::vector<std::string> ss;
ss. // at this point, you should _not_ see method "flip" in the completion list
ss.begin()-> // at this point, IDE should list all members of std::string
std::vector<bool> bs;
bs. // at this point, you _should_ see method "flip" in the completion list
}If the above behaves as comments describe, then your IDE understands operator overloading, templates in general, and template specializations in particular. VS (2008, at least) does it right.
Second is debugging. One real nice thing that VS has going for it there is type visualizers for the watch windows. Basically, when you have a std::list or std::string, normally, since it's a class, the watch window will just show all its members, and you'll have to navigate to the underlying data yourself (and, in case of list, actually go through the chain of linked nodes until you get to the one you want). In VS2005+, however, there is an ability to define custom visualizers for types, that represent an instance of that type in some more convenient way. For example, for all STL containers, it will display the count of elements, and list the elements themselves (as if it was an array); for std::string, it will show the string; and so on. Of course this can be disabled for individual watch expressions when you actually need to see the real members (but frankly, unless you're debugging STL containers themselves, how often would you want to do that)? That feature is even customizable, albeit in a limited way (but still enough to cover all STL, ATL and MFC containers).
Now Qt Creator shines in a different area - it's a very, very nice RAD UI tool. Qt itself is simply the best C++ toolkit for that sort of thing today, on any platform, and Qt Creator is decent IDE with integrated visual designer, debugger, and other nifties. Note that you don't get MFC with Visual C++ Express (and even if you would, it's much more ugly and low-level than Qt). You can of course still use something like wxWidgets with Express, but arguably it's still worse (too MFC'ish for my taste), and you don't get any integrated designers.
-
C++ /clr:safe
Actually, Microsoft's
.NET compiler can compile fairly generic C++ source into .NET IL.True, Visual C++ 2005 can recompile generic C++ into
/clr:pure MSIL, but it won't run in Silverlight or XNA. You have to rewrite the C++ into Microsoft's /clr:safe (verifiably type-safe) dialect of C++ to get it to run in such fully managed environments. Because a C++ program in /clr:safe can't use the C++ standard library, porting a C++ program to /clr:safe would probably be almost as much work as rewriting it into C# in the first place. -
GoodNeWS / HyperNeWS / HyperLook
In 1989, Arthur van Hoff developed a HyperCard-inspired system called GoodNeWS, written in PostScript, for James Gosling's NeWS window system. Arthur later went on to work at Sun on Java, wrote the Java compiler in Java, the AWT gui toolkit, and the HotJava web browser.
GoodNeWS was later renamed HyperNeWS, then later HyperLook. I went to Glasgow to work with Arthur at the Turing Institute, to develop HyperLook into a product, and I used it to develop the first Unix version of SimCity.
HyperLook was really wonderful, because it combined the strengths of HyperCard with the superior graphics and programmability of PostScript, and the network communication model currently known as AJAX.
I've written down some Ideas for Sugar development environment from HyperLook SimCity, with lots of links and illustrations, relating it with many different programming languages, user interface systems and applications that have inspired me.
Here is just the stuff about HyperLook -- the article goes on further to discuss and compare other technologies I think are interesting and applicable to the OLPC's constructionist education project.
Ideas for Sugar development environment from HyperLook SimCity
I love the ideas behind Smalltalk, EToys and HyperCard, and would like to combine them with ideas from visual programming languages like Robot Odyssey, KidSim, Klik-and-Play, SimAntics, Body Electric/Bounce, Max/MSP/Jitter, etc.
Here are some ideas about HyperLook and other systems, that could be applied to Sugar:
HyperLook was a PostScript-based user interface development environment for the NeWS window system, which Arthur van Hoff created at the Turing Institute in Glasgow. http://www.donhopkins.com/home/catalog/hyperlook/
I helped develop HyperLook into a commercial product, with a editable user interface development environment, as well as a redistributable non-editable runtime, and I used it to port SimCity to Unix, and develop other components and applications . http://www.donhopkins.com/home/catalog/hyperlook/ http://www.donhopkins.com/home/catalog/hyperlook/HyperLook-SimCity.gif
HyperLook was inspired by HyperCard, but it additionally provided a client/server programming model, and more powerful graphics and scripting based on NeWS's object oriented dialect of PostScript. http://www.donhopkins.com/home/catalog/hyperlook/TalkInterfacing.gif
The NeWS window system was like AJAX, but with:
1) PostScript code instead of JavaScript code
2) PostScript graphics instead of DHTML graphics, and
3) PostScript data instead of XML data.It had a unified programming/graphics/data/networking model based on NeWS's extended multi-threaded object-oriented dialect of PostScript, instead of a hodge-podge of accidental technologies. (Although I will be the first to admit the X11/NeWS merge was quite a hodge-podge and huge-kludge!) NeWS had an object system based on the simple dynamic ideas of Smalltalk, implemented with the PostScript dictionary stack, supporting multiple inheritance and runtime modification of objects and classes. http://www.donhopkins.com/home/catalog/hyperlook/HyperLookInfo10.g
-
Re:Quick guide to doing graphic work in Java:
C# is available on other platforms such as Linux through the Mono project, for example this article titled C# and
.NET Without Microsoft. Also since the introduction of Silverlight Microsoft can allow other OS' to run a subset of .NET code -- maybe even coded in C# -- through a browser plug-in. You've fallen into the trap of thinking C# = Windows which is not true. Do some reading of these links and you'll be amazed what C# really is. Also as an EMCA specification it's not likely to be tied to a platform any more than any other international standard. -
Re:ElephantFor each update, it locks the entire database.
What are you talking about? Do you understand the concept of MVCC, real MVCC? You are sorely mistaken if you think PostgreSQL locks then entire database just because it stores all the data for a table in a single file (which btw, it does not).
-
Multiversion Concurrency Control, MVCC
Oracle and PostgreSQL uses MVCC to reduce the problem of locking.
MVCC makes the system a lot more scaleable with a lot of writing going on.
http://searchwarp.com/swa9860.htm
http://www.developer.com/open/article.php/877181
http://www.postgresql.org/docs/8.2/interactive/mvc c.html
http://www.onlamp.com/pub/a/onlamp/2001/05/25/post gresql_mvcc.html
Microsoft SQL Server 2005 also have some support for MVCC, but I haven't read up on that one. Microsoft SQL Server before 2005 did not have it.
You can easily notice the advantage of MVCC when compering MySQL and PostgreSQL. MySQL is fast until it gets a lot of writes and then it get slow until it dies. PostgreSQL have a more stable curve and can handle a lot more load because MVCC make the writes do not lock the reads.
This was a major advantage for Oracle and it probably still is because MS SQL Server 2005 is still a new product. MySQL is also catching up, but slower. -
MySQL scales enough
You have ONLY 60000 query's per day? That's on a 12 hour working cycle about 1,3 per second. ANY RDBMS should be able to handle this on today's hardware (even on yesterday's hardware).
If you're looking for data safety and recovery etc. you better make sure you use decent table types and optimized queries and that your programmers use database-side transactions (Yes, I've seen programmers implement the transactions on the program side, not a good idea btw) with whatever database system they are using. Check out http://www.developer.com/db/article.php/2235521 for the different table types and the pro/con's about them on MySQL.
Also make sure your hardware is decent. Especially with database systems, you do not want to have downtime because you saved $200 on the hardware. Use RAID5 or even RAID6 if possible, look at optimizing your server with the documentation from the merchant (MySQL AB has some good documentation). Another issue I recently walked into: don't use cheap SuperMicro hardware enclosures you built yourself. I got a hard drive stuck the other day because a power cable slipped under while sliding it in and had to bring the whole machine down to 'operate' it. I have good experience with Apple's hardware (the server hardware), it falls apart quit easily and is easy to maintain without downtime (up to replacing fans and power), you do not have to keep Mac OS X however if you don't want to.
MySQL is definitely an industry-grade solution, especially their latest versions. And they're relatively cheap (free if you want) and have a very good commercial support plan and staff (if you go not-so-free). -
Re:Ask Slashdot...
There's a bunch of new structures (foreach comes to mind, as do generics in Collections.), but if you know 1.3/1.4, then you'll be up to speed in no time.
-
Re:Its crazy
"how the processor loads strings into registers"
1. mov ebx, offsetof cconst$129
2. Java chip instruction reference
3. Can you answer offhand how processors do integer division? (I can)
4. ... in which order a processor will execute a given series of instructions? (I can't)
People only need to learn something they use for work, or something they are curious about. It sounds like the later is the case with your coworkers, and you should give them a curiosity-satisfying explanation about memory being one big byte array and \0-terminated strings. As for people who are not curious and don't write native code, so what if they don't know what is a processor and what is memory? -
Re:Say what?
How in the heck do you conclude that?
"Addressing....open issues at each moment" implies a baseline issue tracking mechanism in which end-user feedback is logged, collated, prioritized, and assigned. Am I being unreasonable?Or, to put a finer point on it, what does it actually mean? Other than just artificially defining the terms ("highest priority open issues," "baseline enhancements" and "strategic application development") to support your conclusion.... is it just buzzword stew?
I merely expressed my position as concisely as possible, using unambiguous terminology. I'll rephrase my earlier response:To say "You have your team focus on addressing the highest priority open issues at each moment" is to focus on a set of individual modifications to an existing system with no consideration given to large-scale modification of that system, or the development of an entirely new system in support of the long-term growth of the organization.
Can you actually give a cogent defense of this claim?
Glad you asked. In the spirit of intelligent discourse I chose to politely ignore the blatantly disingenuous comparison you made between market forecasting and project estimation -- a comparison upon which you appear to have based your entire argument. After reading _that_, I'm still not convinced this isn't just a sophisticated troll.My original claim was stated thus: "Any cohesive strategy requires coordination at the organizational level (of which IT represents only one of several components) -- coordnation that simply cannot be achieved without detailed planning."
This concept is virtually dogma, representing a cornerstone of decades of project management theory. I merely stated it in an effort to remind our readers that real businesses rightly consult professional staff when preparing project plans. Plans that are not only useful in measuring the effectiveness of a project team, but which may in fact also be required by law.
Yes, and the answer is (or should be) well known: in general, there is no way to determine the time it will take to complete a software project that takes less time than actually doing the work and seeing how long it took.
Agreed -- assuming of course the problem this project solves has in fact never been solved. The vast majority of problems being solved at any given time in IT however, have been solved a hundred times over in other contexts, by other teams. It is the familiarity of these problems and their solution patterns that distinguish experienced software engineers from those, well, new to the field.If you want the theoretical underpinnings, just note that software development is a subset of the halting problem.
Algorithm development != Software development. Algorithms solve very specifc problems, to exactitude. The problems businesses ask software engineers to solve are more general in nature. General problems resembling general patterns upon which general solutions may be based. The differences between algorithm and application development are so vast one could argue the two are completely unrelated. -
DOPE: Distributed Objects Practically Everywhere
Back around 1990-1991, there were also a bunch of HP and Apple people involved with OMG. Some of the HP people migrated over to Sun, and tricked Sun into starting Project DOE (Distributed Objects [Practically] Everywhere).
Michael Powell was "Mr. DOE" at Sun. Before going to Sun, he worked on a Modula-2 compiler . He thought C++ had a really beautiful object model ("once you get past all that other stuff"), and didn't think anybody could understand Lisp (and didn't want anything to do with it). Nobody in the company actually knew what DOE really was but Michael Powell, so if you wanted to know, you had to go ask him, and he'd tell you what he thought you wanted to hear at the time, because he hadn't ever bothered to write it down. That was how he consolidated his power and kept a grip on his position as the architect of DOE, because nobody could pin him down about anything. So after years of development, DOE was so late and bloated that Sun finally released it on *TWO* CDROMs (unheard of at the time).
Arthur van Hoff (who previously developed HyperLook for NeWS, and later wrote the Java compiler in Java, and founded Marimba) didn't think DOE was usable, so he sat down one day and rewrote a tiny version of DOE from scratch called "DOE-Lite", which everybody in their right mind used instead of the official bloated DOE release. Arthur then proceeded to use DOE-Lite to make a distributed object trading demo which Sun demonstrated on the show floor at Object World. Ironically, he implemented using the (then canceled) NeWS window system, instead the officially sanctioned DOE user interface toolkit (because the official DOE gui was vaporware).
Sun put a lot of different colors of lipstick on that fat old pig, DOE: they renamed it "NEO", and then they tried to pawn it off as a back-end to OpenStep (NeXTStep, which they later gave up on), and eventually they tried to imply that it had something to do with Java.
I'd love to know what happened to DOE architect Michale Powell since his reign at Sun back around 1991! (No he's not Colin Powell's son, head of the FCC.) Had anyone heard from Michael Powell ever since? Where is he now? Does he have anything interesting to say about what went wrong with DOE?
-Don
-
Re:What is left to blog about at Microsoft anyway?
The question is -- what is left to blog about at Microsoft at the moment anyway?
Oh, I don't know...maybe from their developer division, in no particular order:
- Windows Presentation Foundation, which basically defines a whole new way of building Windows UIs, complete with designer focused tools
- WPF/E, the subset of WPF which is supposed to run in browser and cross platform - including a
.NET BCL subset. - Windows Workflow Foundation, which has the potential to redefine basic business application development - including a rehostable designer that a business user can comprehend and possibly use.
- LINQ, which gives C# and VB compile time support for querying Sql, object graphs, and XML.
- Visual Studio Team Edition for Database Professionals, which brings database development into the same world as code development.
- The fact that Sql Server 2005 is slowly being morphed into an application server, complete with the ability to host the CLR, expose web services, perform data integration, etc.
- Office 2007 being (re?) positioned as a custom business application environment.
- A push towards supporting Domain Specific Languages within Visual Studio.
- Exchange Server 2007, which exposes a web services api, and allows for OWA embedding.
Yeah...that's about all the interesting stuff I can think of coming out of the developer division in the near to medium term. Note that I didn't state this stuff was any good (I haven't had the chance to toy with most of it yet), but I do think it's interesting and worth talking about.
Of course, their other divisions are no slouches either, so we also have (again, in no particular order):
- A brand new deployment format for Vista called Windows Imaging Format, which could make multiple Ghost images a thing of the past.
- A ridiculous number of Office 2007 servers, including a new version of Office SharePoint Server, not to (evidently) be confused with the new Windows SharePoint Services v3.
- OneNote Mobile, which finally puts OneNote where it belongs - on a Windows Mobile device. Now if they'd just add PocketPC support...
- Windows Compute Cluster Server 2003
- Virtual Server Host Clustering, catching up
-
TAPI from Microsoft is your answer
IF (big if) you have a WinCE Smartphone, Microsoft TAPI (Telephony API) is your answer. It can process incoming and outgoing calls in amazing ways. A good place to start may be here.
I put on my robe and asbestos hat, preparing for the flames... -
So....Coffee Flavoured Chips.
And yet there are Java Chips.
-
Rss and VB 2005
And today, this article appears on Developer.com: "RSS: So Simple with Wisual Basic 2005".
http://www.developer.com/net/vb/article.php/356714 1
"In no time, you can build a simple RSS viewer that takes a user-entered RSS feed URL and retrieves the title, description, and link for that channel."
And so now we can expect a rapid proliferation of readers that don't work with every other RSS feed in the world; they will require the 'Microsoft Extensions' (I am assuming this of the VB implementation, either now or in the future). RSS feeds and readers alike will eventually have to implement it one way or the other.
I don't know what the plan for World Domination here is, but it goes something like this:
1) Wedge yourself in the middle where no one wants or needs you
2) ???
3) Profit! -
Re:The real problem
Innodb and BDB use different mechanisms to ensure that transaction data is updated atomically. Innodb uses MVCC (though it has a bloat problem here which can become very severe), while BDB uses page-level locking. In page level locking, all the rows in a data page to be updated are locked while the transaction is in process.
More info at http://www.developer.com/db/article.php/2235521 -
Profit or die?
Seems like the bottom line of expected profit will determine whether a bubble will burst. Besides, what more is an economic bubble than an overvalued profit making mechanism?
Profits don't seem to go too well with the open source definition shown here:
http://www.opensource.org/docs/definition.php
Do and should people profit from Open Source? If so, who? and how? Why does Open Source need investment? Why do people/companies need to profit from Open Source projects? Is it inherently wrong to look at profit as a desired end result for Open Source projects? If someone owns and patents an Open Source project or related project derived from Open Source, is it really Open Source?
Another interview with David Skok:
http://www.developer.com/java/other/article.php/62 6991
A bubble cartoon from 1875.
http://upload.wikimedia.org/wikipedia/en/a/ad/The_ Way_to_Grow_Poor%2C_The_Way_to_Grow_Rich_--_Currie r_%26_Ives_1875.jpg -
Re:Get over yourself ESR!
There's one more thing. Raymond was given $36 million in VA Software stock (LNUX) at their IPO as compensation for being on their board. See this article. Hence the comparison of MSFT and LNUX.
-
Re:Modularised code will always have this problem.
See here
On the broad issue on whether we should be using other languages, I think that saying "the programmer should carefully" is a bit misguided. Humans make mistakes and this is something that computers can do very well. Besides, if coding in such languages is slow, we can use a profiler to find the hot-spots and optimise the slow section using a lower level language.
For that reason, I don't really buy the "but it's too slow argument" - I think it's a good trade-off to use a language that doesn't allow buffer-overflows.
Simon.
-
ASP.Net 2.0
ASP.NET 2.0 does this also. You can define client callbacks on web controls which let you run code on the server-side and get the results back without reposting the page.
http://www.developer.com/net/asp/article.php/35068 96 -
Re:Already doing it
close, but not quite (as usual). theyre working on a new shell for longhorn called monad.
see Monad Shell (MSH) and Coming Soon to Windows: The Microsoft Shell (MSH) -
Not quite true
This article speaks of MySQL serving ~1TB in real life, and links to a benchmark which has MySQL scaling as well as Oracle (just one benchmark, but I think it makes the point).
MySQL has a number of features, restrictions and peculiarities which I find irritating, but in terms of raw performance, especially on reads, it doesn't seem to stop when your database gets seriously large. I find PostgreSQL much more pleasant to use, and this article speaks of Fujitsu helping to add Table Spaces to make management of data "into the hundreds of gigabyte" easier, with the implication being that people already have PostgreSQL databases that large, and the feature is basically a bonus. This article also mentions a PostgreSQL database of over a terabyte.
I think you'll find that the limitation is not the software, the limitation is that precious few MySQL DBAs are familiar with databases larger than you can squeeze into a desktop machine (the machine in front of me will take 4x250GB IDE disks for a total of 1TB of storage, for example, and if you had matching SATA drives as many controllers do, put in a new PSU and double that).
The developer.com article mentions that Oracle was harder to tune for larger databases than MySQL, so perhaps this is changing, perhaps we will see more people asking if it's worth spending the extra money for a database that's harder to operate, and no faster. Perhaps it would be cost-effective to spend the money on more servers instead (you can get a pair of jaw-droppingly impressive servers for the price of a single high-end Oracle licence), and rely on redundancy rather than expertise. PostgreSQL supports replication, and there are bolt-ons to do the same for MySQL, kinda-sorta, so it's not an unreasonable proposition and can only get more attractive as these features are improved. -
Re:SWT is faster than AWTI love this quote from Tim Boudreau... A lot of the comments on this story really illustrate his point:
"IBM has done this pretty amazing reality-distortion thing around Eclipse - there are some people now who actually believe that Eclipse was the first open source Java IDE, or the first modular one, or the first rich client platform, when NetBeans was doing all those things years before. The marketing effort around Eclipse is a work of art, and my hat is off to the marketing and PR folks who achieved it. It certainly proves that throwing lots of money at a tools marketing problem is one way to solve it. We're not about to let them get away with that twice."
IBM also complains about how the JCP is too controlled by Sun but if you look at the PMC's for the Eclipse projects you'll see a whole lote more IBM email addresses than anything else.
From everythingI've seen and read, Eclipse/SWT is a real dog on linux. Swing is slower on linux than on windows but not as bad as swt. I wish I could find the blog but I remember one of the netbeans developers mentioning he tried to lod the netbeans source tree in eclipse and it choked. I wonder what Eclipse developers are using to develop Eclipse? That's probably not a failing of SWT but for such a long time Eclipse fanatics have been talking about how slow netbeans it's nice to see blogs and forum postings talking about how people are switching to netbeans because of how slow eclipse has become.
"There are other downsides to NetBeans. NetBeans is ONLY a Java IDE. Eclipse on the otherhand is a platform for developing in various languages. NetBeans also has no capability, or desire for that matter (hello Sun), to run with FOSS implementations of the Java runtime. To me this is not a big deal but to others it might be."
Well, this is not the case. Netbeans is an open platform with a plug in architecture. It's had this since before ibm started pushing eclipse. There have been modules writen for c/c++ and fortran. Sun's development tool Sun Studio 10 is based on netbeans and it is for c/c++ and fortran. In fact when it was Forte there's this interesting blurb from this article:
With this release cycle, the Forte Developer suite has been migrated to the NetBeans open source platform, which is the foundation for Sun's Forte for Java integrated development environment (IDE). Sun's family of development tools now shares a unified IDE, creating the first tool that works seamlessly for all major languages and across platforms. This approach helps improve productivity, enabling developers to work in multiple languages with one environment.
For such a long time some Eclipse fanatics have been dismissing Netbeans because Netbeans was slow... well now eclise is slow.... Eclipse is a foundation for building your applications netbeans is just an idea... well... netbeans was a platform before eclipse was a foundation... eclipse has plugins.... netbeans has plugins too... you just don't need to hunt around for as many of them as you need for eclipse to be productive.... eclipse supports more languages... well good for them.. netbeans can too... My favorite... websphere studio is built on eclipse so if I learn eclipse I'll know websphere studio... HA! These people obviously haven't used websphere studio.As for these open java platforms? 1: you can get netbeans to develop applications targetted for them with a bit of setup even if you can't get neatbeans to compile and run on them... 2: why is it sun or netbean's fault of these open java platforms can't keep up?
I think there's a lot of people that need to wake up to what IBM is doing. Yeah they do some really good things but there's a lot more to the story.
-
Azureus is not Java (TM) ApplicationI gained a lot of respect for Java apps when I tried Azureus for the first time.
Sun would have fit if you called an SWT application a java application. Which in turn proves that Sun is truly a hardware company and has always been. Java has been wasted on Sun.
-
Re:Oh man, I needed that.
On Real-Time Systems, Java is still not a suitable candidate due to its indeterminstic garbage collection.
In mission-critical application, a hard time requirement cannot be violated. And you wouldn't want Java's gc to kick in and cause a space shuttle to crash would you.
http://www.developer.com/java/other/article.php/13 67671/ -
Re:What about other platforms?
Also, developer.com which used to be branded as gamelan. They do
.Net but they also do Java, Perl, PHP, *TML, etc. -
Netbeans
Use Netbeans. It has recently leapfrogged Eclipse in many areas (not to say that won't change) and the guys I work with say it is faster than Eclipse now in addition to the Refactoring, Swing Builder, etc. that it has.
The new 4.0 and 4.1 releases use ANT build files for all of their project information. They build and run JUnit tests as part of the project and the build process, and they come with a sweet profiler that even allows you to profile remotely. One of the neat things about the ANT based projects is anything that can use an ANT build script can build your project -- whether it be ANT itself, CruiseControl, Maven, Eclipse, etc.
The latest beta of 4.1 will even import Eclipse projects.
Also recently voted Developer.com Product of the Year 2005
-
Language popularity. Java use going down.
-
Re:Why Mono is necessary for the Linux/UNIX worldJava has failed to gain popularity both with users and developers
Wow you could not be more wrong. My "Proof"
Notice Java being the most popular language according to that chart.
I notice that a common theme here is that Mono is needed because RAD(rapid application development) is lacking in Linux. RAD seems to be a sticking point for tons of people who for all I can tell are more concerned with rapidly churning out apps than having correct/good implementations. Or for that matter people who prefer to have quality clean libraries where objects and inheritence aren't creating ugly masses of difficult to maintain code.
My opinion: if you want RAD thats fine, but to suggest that its "necessary" to compete with Windows is just plain foolish. Linux didn't get where it is today by succumbing to the ever increasing move to OO(object oriented). There is no data suggesting Linux has hit a plateau, on the contrary it is growing, without the help of RAD/OO and all these concepts that in my mind are contrary to GOOD programming practice.
Furthermore nothing about the open source model should be described as rapid. Open source development should be slow & methodical, having hundreds/thousands of people hammering away at each others ideas. Introducing these bloated libraries designed as RAD can only result in one outcome in my opinion. A fork. Where the RAD group with there C# or whatever language of the week has there fun in the sun for a few years but eventually die out as the ansi-C programs keep on plodding along, slowly but confident in the fact they are not a passing fad.
-
"What Is Message Queuing?"
"Message queuing is a communication tool that allows applications to reliably interconnect in a distributed environment where one of the applications may or may not be available at any given time. The queue acts as a holding container for messages as they are sent between applications. The applications send messages to and read messages from queues to communicate back and forth. An application writes a message to a queue, which will then be received and processed by another application at some point determined by the receiving application. This type of communication is designed for asynchronous use where the applications involved are not waiting for an immediate response from the other end."
From http://www.developer.com/net/asp/article.php/32979 11 -
Re:Itanic hits Iceberg. News at 11.This may not be the end of the line for it, though. MS has only dropped their workstation version, not their server version.
The really interesting question is: will Linux be able to carry Itanic, now that MS is starting to leave it behind?
Another question is: now that MS is dropping Windows for Itanium, will Intel contribute more free development tools for ia64 Linux and make more "investments" in Linux for Itanium? Since 1998, Intel has made many contributions to Linux for x86 and Itanium - I'm assuming much more than Alpha and MIPS have.
But even if they do, will enough Linux developers choose to develop for expensive Itanium workstations when cheap x86 workstations are "good enough." I think we'll see a lot more Itanium-specific Linux investments from Intel, but I don't know if Linux developers will invest more time in Itanium.
For the near future, it looks like Itanium workstations have Debian 3.0 and Red Hat Enterprise WS.
-
Re:Massive Keyspace?
Only slightly related, but I found this interesting. It's a few people who broke the "security" of PlanetPoker by exploiting flaws in their shuffling algorithm. They were able to combine weaknesses in the actual algorithm with weaknesses in the random number generator with weaknesses in how the random number generator was used to essentially completely determine the cards everyone has in any deal just from the face up cards.
It really drives home the point that security is much more difficult to right do than you might think. -
strict choctaw
Choctaw has taint()! Just goes to show how failing to rely on the "-T" flag can allow your entire nation to be conquered by European invaders, overflowing your treaty buffers with cannon.
-
Re:Is it just me
That's a good point, though I've seen enough bad code to say that errors like this actually COULD make it out -- there's a shocking number of developers out there who just make changes until it "works"... even if they're still broken code being executed (in PHP you just put an "@" in front of any function call to suppress errors, and people DO this so they can keep working without sorting out the problem!). You see multiple attempts to do the same thing, and only ONE of them actually does it. Ugh.
That's back to incompetent programmers, though..
Here's a better review of security issues in PHP, with much better examples than I had. I'm out of my areas of expertise.... -
Re:Command line in OSX
Hopefully Monad will fit the bill for a highly unix-like CLI
developer.com article here
I fully expect a rash of complaints about how it won't be "unix-y" enough, though :-) -
Re:like Jython...
See here for some rough (and somewhat outdated) assessments of CPython vs. Jython performance. It is somewhat slower, but depends on the nature of the task. And is it slower than the equivalent compiled Java bytecode? Again, probably yes, but for some tasks it doesn't matter. And the nice thing is you can write a whole app in Jython and easily rewrite performance critical components in Java and just call them from Jython, which is much easier given that everything happens in the bytecode realm than writing and exporting C/C++ modules to Python.
-
John Viega and MailmanFor those who are or would assail John Viega's credibility, I should remind you who he is.
Most notable for the purpose of this discussion, Viega is the creator of Mailman, the fantastically-popular GPLd mailing list management software. All was good and well with his view of the many-eyeballs theory until, one day, he found a huge, glaring, holy-shit hole in Mailman a few years ago. He was so alarmed that nobody had ever spotted this that, after fixing it, he reflected on what he'd learned and turned it into a thoughtful article, The Myth of Open Source Security. As he wrote:"For three years, until March 2000, Mailman had a handful of glaring security problems in code that I wrote before I knew much about security. An attacker could use these security holes to gain access to the operating system on Linux computers running the program.
Again, Mailman was and is an extremely popular program -- this was not a problem of obscurity.
"These were not obscure bugs: anyone armed with the Unix command grep and an iota of security knowledge could have found them in seconds. Even though Mailman was downloaded and installed thousands of times during that time period, no one reported a thing. I finally realized there were problems as I started to learn more about security. Everyone using Mailman, apparently, assumed that someone else had done the proper security auditing, when, in fact, no one had."
So, the OnLamp.com article under discussion here is a follow-up to his original article, as he points out in the opening to the new article (but people apparently aren't reading.) As you can imagine, Viega is no rabid anti-OSS guy -- he's, in fact, the very model of what we want our developers to be. He writes good software, admits it when he writes bad software, and tells it like it is, even when we don't want to hear it.
(Disclaimers, such as they are: Viega is an adjunct professor at Virginia Tech, where I attend school, and I was the earliest alpha-tester of Mailman, in the late 90s.)
-Waldo Jaquith